C#中常用的字符串操作函數
StringBuilder類
StringBuilder 類表示可變的字符串,為於System.Text命名空間下。可被動態的修改。
1. StringBuilder的容量是對象在任何給定時間可存儲的最大字符串數,並且大於或者等於對象的字符串表是形式的長度。容量可以通過Capacity屬性或者EnsureCapacity來增加或者減少,但不會小於Length屬性的值
2. 初始化StringBuilder的對象時沒有指定容量或者最大容量,則會使用默認值
1 | public StringBuilder() |
2 | public StringBuilder(int Capacity) |
3 | public StringBuilder(strin value) |
4 | public StringBuilder(int Capacity,int maxCapaticy) |
5 | public StringBuilder(string vaule,int Capacity) |
6 | public StringBuilder(string value,int startIndex,int length,int capacity) |
capacity | StringBuilder建議起始大小 |
vaule | 字符串,用作初始化StringBuilder |
maxCapacity | 當前字符串可包含的最大字符數 |
startIndex | value中字符串開始的位置 |
length | 子字符串中的字符數 |
StringBuilder類中的常用方法
方法 | 說明 |
Append | 追加字符串 |
AppendFormat | 自定義格式並追加 |
Insert | 指定位置添加 |
Remove | 移除字符串 |
Replace | 替換字符串 |
StringBuilder使用示例
static void Main(string[] args) { int Num = 368; StringBuilder str = new StringBuilder("StringBuilder使用"); str.Append(",使用Append追加.");//字符串追加 Console.WriteLine(str); str.AppendFormat("{0:C}", Num); Console.WriteLine(str); str.Insert(0, "說明:");//開頭插入"說明" Console.WriteLine(str); str.Remove(20, str.Length - 20);//從索引3刪除到最后 Console.WriteLine(str); str.Replace("StringBuilder", "StringBuilder類");//替換 Console.WriteLine(str); }
結果輸出:
StringBuilder使用,使用Append追加. StringBuilder使用,使用Append追加.¥368.00 說明:StringBuilder使用,使用Append追加.¥368.00 說明:StringBuilder使用,使 說明:StringBuilder類使用,使 請按任意鍵繼續. . .
C#中日期格式化
格式規范 | 說明 |
d | YYYY-MM-dd |
D | YYYY年MM月dd日 |
t | hh:mm |
T | hh:mm:ss |
f | YYYY年MM月dd日 hh:mm |
F | YYYY年MM月dd日 hh:mm:ss |
g | YYYY-MM-dd hh:mm |
G | YYYY-MM-dd hh:mm:ss |
M或M | MM月dd日 |
Y或y | YYYY年MM月 |
DateTime dt = DateTime.Now; string datestr = string.Format("{0:D}", dt); Console.WriteLine(datestr); //輸出 2018年12月13日
String類和StringBuilder類的區別
- String對象時不可變的,每次使用String類中的方法的時,都要在內存中創建一個新的字符串對象,需要為對象分配新的空間,在需要重復修改的情況下,與將建新的String對象相關的開銷非常的大
- StringBuilder類剛好相反,尤其時對同一字符串頻繁的操作時,可以提高性能。