一、C# 預處理器指令
在C#編程過程中,如果文件中的代碼太長那麼就不便於閱讀,為此,采用C# 預處理器指令#region來處理代碼。#region 是 C# 預處理器指令。#region 是一個分塊預處理命令,它主要是用於編輯器代碼的分塊,在編譯時會被自動刪除。
#region 使程序員可以在使用 Visual Studio 代碼編輯器的大綱顯示功能時指定可展開或折疊的代碼。使用#region和#endregion,將代碼寫在兩者之間就可以了。
public void Insert(string InsertStr)
{
MySqlConnection conn = new MySqlConnection();
conn.ConnectionString = mysqlconstr;
MySqlCommand comm = new MySqlCommand(InsertStr, conn);
OpenConnection(conn);
#endregion
單擊#region後展開後就可以看到以上代碼,這樣做便於閱讀代碼
二、C#的字符串處理-String和StringBuilder
先說說String類,這個就是字符處理類,它提供很多的方法來處理字符串。
使用方法:string sqlconnstr=” bianceng”;如果在這裡試圖用new那麼會出現錯誤,原因等下再說。String類提供的方法請看下面表中的程序並對照右邊的結果就可以判斷出方法的作用。
Console.WriteLine("string類的方法");
String strText = "Larger than me";
Console.WriteLine(strText.Clone());//克隆,返回實例的引用
Console.WriteLine(strText.CompareTo("Larger than me"));//比較兩個對象是否一樣
Console.WriteLine(strText.Contains("than"));//判斷對象是否包含"than"有就返回true
Console.WriteLine(strText.EndsWith("me"));//判斷對象末尾是否與"me"匹配,是返回true
Console.WriteLine(strText.Equals("Larger"));//判斷對象與參數對象有相同的值
Console.WriteLine(strText.GetEnumerator());
Console.WriteLine(strText.GetHashCode());//哈希碼
Console.WriteLine(strText.GetType());//類型
Console.WriteLine(strText.IndexOf("L"));//參數L在對象中的位置
Console.WriteLine(strText.Insert(1, "you"));//在處插入"you"
Console.WriteLine(strText.IsNormalized());//對象是否符合Unicode范式
Console.WriteLine(strText.LastIndexOf('m'));//參數m最後出現的位置
Console.WriteLine(strText.Length);// 對象的長度
Console.WriteLine(strText.Normalize());
Console.WriteLine(strText.PadLeft(20, 'y'));//用y左填充對象使其長度滿足
Console.WriteLine(strText.PadRight(20, 'x'));//用x右填充對象使其長度滿足
Console.WriteLine(strText.Remove(5));//移出從指定位置開始以後的所有字符
Console.WriteLine(strText.Replace('a', 'y'));//替換
Console.WriteLine(strText.Split('y'));
Console.WriteLine(strText.StartsWith("Lar"));//判斷是否以"Lar"開始
Console.WriteLine(strText.Substring(2,6));//從開始的長度為的子字符串
Console.WriteLine(strText.ToCharArray());//將對象轉化為字符數組
Console.WriteLine(strText.ToLower());//轉換為小寫形式的副本
Console.WriteLine(strText.ToLowerInvariant());
Console.WriteLine(strText.ToString());
Console.WriteLine(strText.ToUpper());//大寫形式
Console.WriteLine(strText.ToUpperInvariant());
Console.WriteLine(strText.Trim());//出去對象中的空白後的對象
Console.WriteLine(strText.TrimEnd('m','e'));//移出'm','e'後的對象
有些方法過於簡單不再介紹,當然要讀者自己編程去體會,掌握各種方法.
三、利用StringBuiler類的方法處理字符串。
StringBuilder類是動態字符串,StringBuilder的對象創建以後可以對其進行刪除和增加,而且是在同一個對象上進行的,mystr.Append(" new")執行以後並沒有創建新的對象,它的結果還是保存才原來的地方。這點與string類不一樣。StringBuilder類的構造方法有:
StringBuilder obj=new StringBuilder(“biancdheng”);默認大小為16字節;StringBuilder obj2=new StringBuilder(“biancheng”,18);//指定為18字節。看看StringBuilder提供方法:
StringBuilder mystr =new StringBuilder("Larger than me");
Console.WriteLine(mystr.Append(" new"));//mystr後面增加"new"
Console.WriteLine(mystr.AppendLine(" loveme"));
//將默認的行終止符追加到當前StringBuilder 對象的末尾
Console.WriteLine(mystr.Capacity);//對象的最大字符數
Console.WriteLine(mystr.EnsureCapacity(20));//實例對象確保至少指定值
Console.WriteLine(mystr.Equals(new StringBuilder("Larger")));//判斷兩個對象是否相等
Console.WriteLine(mystr.GetHashCode());//獲取哈希碼
Console.WriteLine(mystr.GetType());//獲取對象的類型
Console.WriteLine(mystr.Insert(0, "insert")); //在指定的位置插入小字符
Console.WriteLine(mystr.Length);//獲取實例對象的長度
Console.WriteLine(mystr.MaxCapacity);//實例對象的最大容量
Console.WriteLine(mystr.Remove(1, 2));//Remove(startindex,length )位置和長度兩個參數移出
Console.WriteLine(mystr.Replace('e', 'y'));//用第二個參數代替第一個參數
Console.WriteLine(mystr.ToString());//轉換成字符
以上程序運行的結果是: