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类刚好相反,尤其时对同一字符串频繁的操作时,可以提高性能。