c#中去掉字符串空格⽅法
(1)Trim⽅法
string  tt=" aaa ";
tt=tt.Trim()      去字符串⾸尾空格的函数
tt=tt.TrimEnd() 去掉字符串尾空格
tt=tt.TrimStart() 去掉字符串⾸空格
(2)通过ASCII码值去掉字符中的空格
由于空格的ASCII码值是32,因此,在去掉字符串中所有的空格时,只需循环访问字符串中的所有字符,并判断它们的ASCII码值是不是32即可。去掉字符串中所有空格的关键代码如下:
CharEnumerator CEnumerator = textBox1.Text.GetEnumerator();
while (CEnumerator.MoveNext())
{
byte[] array = new byte[1];
array = System.Text.Encoding.ASCII.GetBytes(CEnumerator.Current.ToString());
int asciicode = (short)(array[0]);
if (asciicode != 32)
{
textBox2.Text += CEnumerator.Current.ToString();
}
}
这⾥的3种⽅法只能去除半⾓空格,不能去除全⾓空格。
(3)Replace⽅法
使⽤字符串⾃带的Replace⽅法:str.Replace(" ","")-------------  str是输⼊或要检测的字符串。
#的Replace函数,有关它的参数需要注意:
indexof空格算不算
如果它的参数是⼀个表达式,系统会先计算表达式做预处理,再执⾏替换操作。
⽐如(GetNameByID为⼀个函数):
String  strSource="这是⼀个⽰例";
strSource=strSource.Replace("姓名",GetNameByID(1));
很显然,strSource是不包含“姓名”的,所以也不会执⾏任何替换。但是,每执⾏⼀次这⾏替换代码,GetNameByID都会被调⽤⼀次。如果GetNameByID是更复杂的逻辑,或者是替换操作在⼀个循环中,将会极⼤地影响系统效率。
建议修改为:
if(strSource.IndexOf("姓名")>-1)
{
strSource=strSource.Replace("姓名",GetNameByID(1));
}
转blog.csdn/dyufei/article/details/5420407