1. string 与 char 数组互转
ToCharArray();
new String(CharArray)
string ss="abcdefg";
char[] cc=s.ToCharArray();
Char[] 转换成string
string s=new string(cc);
此外,byte[] 与 string 之间的装换
byte[] bb=Encoding.UTF8.GetBytes(ss);
string s=Encoding.UTF8.GetString(bb);
下面我们利用 StringBuilder 来进行数组 与 string 间的转换 , 很简单,代码如下
using System.Text;
StringBuilder sb=new StringBuilder();
foreach(char c in cc)
{
sb.Append(c);
}
string s=sb.ToString();
StringBuilder 的 Append 方法支持多种参数,所以数组转换成string基本上都可以用它。
另外 string[] 转换成string,.Net框架提供了一个使用的方法
string strOr= "OR";
string result=string.Concat(new string[]{" A ",strOr," B ",Environment.NewLine," C ",strOr," D "});
2. 数据库字段中用到单引号的解决办法: .Replace("'","\"");
3.慎用DateTime.ToString()
在调用ToString的时候,用的是系统默认的Culture(语言风格)和默认的格式"G",而G又取决于默认Culture的DateTimeFormatInfo的属性ShortDatePattern和LongTimePattern,如果用户在控制版面将这两种格式改了,ToString()的时候也会随之改了。
所以这绝对不是微软的bug,相反微软为了ToString与系统设置一致而采用了系统默认的格式。
如果用户不想用默认设置的话,这样就可以了:
String str = dt.ToString(CultureInfo.InvariantCulture.DateTimeFormat);
System.Threading.Thread.CurrentThread.CurrentCulture = new System.Globalization.CultureInfo("en-US");
4. 取余数 用 a%b ;
5.
indexof() :在字符串中从前向后定位字符和字符串;所有的返回值都是指在字符串的绝对位置,如为空则为- 1 string test="asdfjsdfjgkfasdsfsgfhgjgfjgdddd"; test.indexof('d') =2 //从前向后 定位 d 第一次出现的位置 lastindexof() :在字符串中从后向前定位字符和字符串;、
他们接受字符数组做为变元,其他方法同上,返回数组中任何一个字符最早出现的下标位置 如下 char[] bbv={'s','c','b'}; lastindexofany 同上。 string a="aadsfdjkfgklfdglfd" a.substring(5) //截取从第五位以后的所有字符串 a.substring(0,5) //截取从第0位置开始长度为5的字符串 |
6 c#读取字符从后读取
读取扩展名 exe
string str = "File.exe";
MessageBox.Show(str.Substring(str.LastIndexOf(".")+1));
欢迎转载,转载请注明出处:http://www.cnblogs.com/Tonyyang/