免费视频淫片aa毛片_日韩高清在线亚洲专区vr_日韩大片免费观看视频播放_亚洲欧美国产精品完整版

打開(kāi)APP
userphoto
未登錄

開(kāi)通VIP,暢享免費(fèi)電子書(shū)等14項(xiàng)超值服

開(kāi)通VIP
物聯(lián)網(wǎng)學(xué)習(xí)教程——增強(qiáng)字符串

  之前有朋友問(wèn)過(guò)小編一個(gè)問(wèn)題,你對(duì)增強(qiáng)字符串這塊了解嗎?其實(shí)小編很多時(shí)候也只是稍微懂一點(diǎn),就先不和大家分享了,如果有想了解的話,可以看看這個(gè),是之前我收藏的!

  一個(gè)自定義類(lèi),用于大規(guī)模的字符串連接,如拼接SQL語(yǔ)句。用流技術(shù)實(shí)現(xiàn)的,很好呦!!

  using System;

  using System.IO;

  using System.Text;

  using System.Windows.Forms;

  namespace SuperString

  {

  ///<summary>

  ///創(chuàng)建者:superhood

  ///內(nèi)容描述:增強(qiáng)字符串類(lèi)

  ///</summary>

  public class CSuperString

  {

  ///<summary>

  ///功能簡(jiǎn)述:運(yùn)算符重載

  ///</summary>

  ///<param name="Left">左參數(shù)</param>

  ///<param name="Right">右參數(shù)</param>

  ///<returns>文本類(lèi)</returns>

  public static CSuperString operator+(string Left,CSuperString Right)

  {

  byte[]btyLeft=Encoding.Default.GetBytes(Left);//返回左參數(shù)數(shù)組

  byte[]btyRight=new Byte[Right.iLength];//返回右參數(shù)數(shù)組

  Right.iTextLength+=Left.Length;//設(shè)置右參數(shù)文本長(zhǎng)度

  Right.iLength=btyLeft.Length+btyRight.Length;//設(shè)置右參數(shù)字節(jié)長(zhǎng)度

  Right.memStrm.Position=0;//將右參數(shù)流位置置0

  Right.memStrm.Read(btyRight,0,btyRight.Length);//將右參數(shù)數(shù)據(jù)讀出

  Right.memStrm.Position=0;//將右參數(shù)流位置置0

  Right.memStrm.Write(btyLeft,0,btyLeft.Length);//將字符串(字節(jié)數(shù)組)寫(xiě)入右參數(shù)

  Right.memStrm.Write(btyRight,0,btyRight.Length);//將右參數(shù)原有信息寫(xiě)回(加在左參數(shù)字符串后)

  return Right;//返回右參數(shù)

  }

  ///<summary>

  ///功能簡(jiǎn)述:運(yùn)算符重載

  ///</summary>

  ///<param name="Left">左參數(shù)</param>

  ///<param name="Right">右參數(shù)</param>

  ///<returns>文本類(lèi)</returns>

  public static CSuperString operator+(CSuperString Left,string Right)

  {

  byte[]btyRight=Encoding.Default.GetBytes(Right);//將右參數(shù)(字符串)轉(zhuǎn)換為字節(jié)數(shù)組

  Left.memStrm.Position=Left.iLength;//設(shè)置左參數(shù)流的位置

  Left.memStrm.Write(btyRight,0,btyRight.Length);//將右參數(shù)字符串寫(xiě)入流

  Left.iTextLength+=Right.Length;//設(shè)置左參數(shù)文本長(zhǎng)度

  Left.iLength+=btyRight.Length;//設(shè)置左參數(shù)字節(jié)長(zhǎng)度

  return Left;//返回左參數(shù)

  }

  ///<summary>

  ///功能簡(jiǎn)述:運(yùn)算符重載

  ///</summary>

  ///<param name="Left">左參數(shù)</param>

  ///<param name="Right">右參數(shù)</param>

  ///<returns>文本類(lèi)</returns>

  public static CSuperString operator+(CSuperString Left,CSuperString Right)

  {

  byte[]btyRight=new Byte[Right.iLength];//聲明字節(jié)數(shù)組(右參數(shù))

  Right.memStrm.Position=0;//將右參數(shù)流位置置0

  Right.memStrm.Read(btyRight,0,btyRight.Length);//將右參數(shù)(字符串)轉(zhuǎn)換為字節(jié)數(shù)組

  Left.memStrm.Position=0;//將左參數(shù)流位置置0

  Left.memStrm.Write(btyRight,0,btyRight.Length);//將右參數(shù)字符串寫(xiě)入流

  Left.iTextLength+=Right.iTextLength;//設(shè)置左參數(shù)文本長(zhǎng)度

  Left.iLength+=Right.iLength;//設(shè)置左參數(shù)字節(jié)長(zhǎng)度

  return Left;//返回左參數(shù)

  }

  ///<summary>

  ///功能簡(jiǎn)述:流中有效字節(jié)長(zhǎng)度

  ///</summary>

  private int iLength=0;

  ///<summary>

  ///功能簡(jiǎn)述:流中文本長(zhǎng)度

  ///</summary>

  private int iTextLength=0;

  ///<summary>

  ///功能簡(jiǎn)述:內(nèi)存流

  ///</summary>

  private MemoryStream memStrm;

  ///<summary>

  ///功能簡(jiǎn)述:構(gòu)造函數(shù)

  ///</summary>

  public CSuperString()

  {

  memStrm=new MemoryStream();//初始化流

  }

  ///<summary>

  ///功能簡(jiǎn)述:構(gòu)造函數(shù)

  ///</summary>

  ///<param name="DefaultLength">默認(rèn)長(zhǎng)度(以字節(jié)為單位)</param>

  public CSuperString(int DefaultLength)

  {

  memStrm=new MemoryStream(DefaultLength);//初始化流

  }

  ///<summary>

  ///功能簡(jiǎn)述:屬性,字節(jié)長(zhǎng)度

  ///</summary>

  public int Length

  {

  get

  {

  return iLength;

  }

  }

  ///<summary>

  ///功能簡(jiǎn)述:屬性,文本長(zhǎng)度

  ///</summary>

  public int TextLength

  {

  get

  {

  return iTextLength;

  }

  }

  ///<summary>

  ///功能簡(jiǎn)述:屬性,流長(zhǎng)度

  ///</summary>

  public int Capacity

  {

  get

  {

  return memStrm.Capacity;

  }

  set

  {

  if(value>=iLength)

  memStrm.Capacity=value;

  else

  memStrm.Capacity=iLength;

  }

  }

  ///<summary>

  ///功能簡(jiǎn)述:向類(lèi)中添加字符串

  ///</summary>

  ///<param name="Date"></param>

  public void AddString(string Date)

  {

  byte[]btyDate=Encoding.Default.GetBytes(Date);//字符串轉(zhuǎn)換為字節(jié)數(shù)組

  memStrm.Position=iLength;//設(shè)置流的位置

  memStrm.Write(btyDate,0,btyDate.Length);//將字符串寫(xiě)入流

  iTextLength+=Date.Length;//設(shè)置文本長(zhǎng)度

  iLength+=btyDate.Length;//設(shè)置字節(jié)長(zhǎng)度

  }

  ///<summary>

  ///功能簡(jiǎn)述:返回文本

  ///</summary>

  ///<returns>返回字符串</returns>

  public override string ToString()

  {

  memStrm.Position=0;//設(shè)置流的位置

  byte[]btyDate=new byte[iLength];//聲明字節(jié)數(shù)組

  memStrm.Read(btyDate,0,iLength);//將流內(nèi)容讀入數(shù)組

  return Encoding.Default.GetString(btyDate);//將字節(jié)數(shù)組轉(zhuǎn)換為字符串并返回

  }

  ///<summary>

  ///功能簡(jiǎn)述:將字符串寫(xiě)入文件

  ///</summary>

  ///<param name="FileName">文件名</param>

  public void WriteToFile(string FileName)

  {

  FileStream strm=new FileStream(FileName,FileMode.OpenOrCreate,FileAccess.Write);//初始化文件流

  //判斷流長(zhǎng)度用來(lái)確定流中是否有冗余信息

  if(memStrm.Length>iLength)

  {//有

  memStrm.Position=0;//設(shè)置流的位置

  byte[]btyDate=new byte[iLength];//聲明字節(jié)數(shù)組

  memStrm.Read(btyDate,0,iLength);//將流內(nèi)容讀入數(shù)組

  strm.Write(btyDate,0,iLength);//將流內(nèi)容寫(xiě)入文件

  }

  else

  {//沒(méi)有

  memStrm.WriteTo(strm);//將流中文本寫(xiě)入文件

  }

  strm.Close();//關(guān)閉文件

  }

  ///<summary>

  ///功能簡(jiǎn)述:將字符串寫(xiě)入流

  ///</summary>

  ///<param name="strm">流</param>

  public void WriteToStream(Stream strm)

  {

  //判斷流長(zhǎng)度用來(lái)確定流中是否有冗余信息

  if(memStrm.Length>iLength)

  {//有

  memStrm.Position=0;//設(shè)置流的位置

  byte[]btyDate=new byte[iLength];//聲明字節(jié)數(shù)組

  memStrm.Read(btyDate,0,iLength);//將流內(nèi)容讀入數(shù)組

  strm.Write(btyDate,0,iLength);//將數(shù)組內(nèi)容寫(xiě)入另一流

  }

  else

  {//沒(méi)有

  memStrm.WriteTo(strm);//將流中文本寫(xiě)入另一流

  }

  }

  ///<summary>

  ///功能簡(jiǎn)述:清除流

  ///</summary>

  public void Clear()

  {

  iLength=0;//將流字節(jié)長(zhǎng)度設(shè)為0

  iTextLength=0;//將流文本長(zhǎng)度設(shè)為0

  }

  }

  }

  字符串轉(zhuǎn)換

  1如何將字串String轉(zhuǎn)換成整數(shù)int?

  A.有兩個(gè)方法:

  1).int i=Integer.parseInt([String]);或

  i=Integer.parseInt([String],[int radix]);

  2).int i=Integer.valueOf(my_str).intValue();

  注:字串轉(zhuǎn)成Double,Float,Long的方法大同小異.

  2如何將整數(shù)int轉(zhuǎn)換成字串String?

  A.有三種方法:

  1.)String s=String.valueOf(i);

  2.)String s=Integer.toString(i);

  3.)String s=""+i;

  注:Double,Float,Long轉(zhuǎn)成字串的方法大同小異.

本站僅提供存儲(chǔ)服務(wù),所有內(nèi)容均由用戶(hù)發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊舉報(bào)。
打開(kāi)APP,閱讀全文并永久保存 查看更多類(lèi)似文章
猜你喜歡
類(lèi)似文章
[譯]C# 7系列,Part 10: Span<T> and universal memory management Span<T>和統(tǒng)一內(nèi)存管
清代<通真>
74張頂級(jí)照片剛剛傳來(lái),太壯觀了!給大家欣賞欣賞!
阿爾捷克少先隊(duì)夏令營(yíng)
<<蘇二姐>>.<<康定情歌>>與李依若
A:=DYNAINFO(17)>1...
更多類(lèi)似文章 >>
生活服務(wù)
分享 收藏 導(dǎo)長(zhǎng)圖 關(guān)注 下載文章
綁定賬號(hào)成功
后續(xù)可登錄賬號(hào)暢享VIP特權(quán)!
如果VIP功能使用有故障,
可點(diǎn)擊這里聯(lián)系客服!

聯(lián)系客服