c#基础知识

1. string 与 char 数组互转

    ToCharArray();

    new String(CharArray)

   

string 转换成 Char[]
            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.

C#中indexof和substring函数用法
2008-04-01 16:39

indexof() :在字符串中从前向后定位字符和字符串;所有的返回值都是指在字符串的绝对位置,如为空则为- 1

string test="asdfjsdfjgkfasdsfsgfhgjgfjgdddd";

test.indexof('d')      =2           //从前向后 定位 d 第一次出现的位置
test.indexof('d',1)    =2          //从前向后 定位 d 从第三个字符串 第一次出现的位置
test.indexof('d',5,2) =6     //从前向后 定位 d 从第5 位开始查,查2位,即 从第5位到第7位;

lastindexof() :在字符串中从后向前定位字符和字符串;、
用法和 indexof() 完全相同。


下面介绍 IndexOfAny ||lastindexofany

他们接受字符数组做为变元,其他方法同上,返回数组中任何一个字符最早出现的下标位置

如下

        char[] bbv={'s','c','b'};
        string abc = "acsdfgdfgchacscdsad";
       
        Response.Write(abc.IndexOfAny(bbv))=1
        Response.Write(abc.IndexOfAny(bbv, 5))=9
        Response.Write(abc.IndexOfAny(bbv, 5, 3))=9

lastindexofany 同上。
====================================================================
substring() 用法

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));

原文地址:https://www.cnblogs.com/Tonyyang/p/1285026.html