2016-02-22 78 views
0

我已经在这样的帖子拍摄的样子:大写字母的字符串的第一个字母只

Format to first letter uppercase
How to capitalise the first letter of every word in a string

但所有这些似乎实际工作。我会想到下手,有也只是一个:

.Capitalize(); 

像有:

.Lower(); & .Upper(); 

谁能可能给我就转换成字符串像任何文件或引用:

string before = "INVOICE"; 

要那么成为:

string after = "Invoice"; 

使用我阅读的帖子解决方案给我的方式,我没有收到任何错误,但是,before仍然保留大写。

+1

您可以创建一个函数,它接受一个字符串作为输入,取第一个字符的字符串,使大写,替换为大写版本的第一个字符,并返回结果。 – Robert

+1

你需要阅读的第二个问题是[将所有的第一个字母转换为大写,为每个单词休息较低](http://stackoverflow.com/questions/1943273/convert-all-first-letter-to-upper-case -rest-each-word?lq = 1) –

+1

's = System.Threading.Thread.CurrentThread.CurrentCulture.TextInfo.ToTitleCase(s.toLower());'从所谓的重复是链接I在我提到的'DID NOT WORK'这个问题中提供了如此无用的重复,谢谢... @SergeyBerezovskiy – KDOT

回答

5

有关使用ToUpper什么在第一个字符和ToLower上的剩余字符串?

string after = char.ToUpper(before.First()) + before.Substring(1).ToLower(); 
+0

'string trantype = char.ToUpper(row.Trantype [0])+ row.Trantype.SubString(1) .ToLower();' - 返回此错误:\t'string'不包含'SubString'的定义,并且没有找到接受'string'类型的第一个参数的扩展方法'SubString'(你是否缺少using指令或者是一个程序集引用?) – KDOT

+2

有一个错字:'SubString'被称为'Substring'。 –

+1

如果你在'.First()'工作后删除了']',它会工作:)再次感谢! – KDOT

3

您可以创建做了这样的方法:

string UppercaseFirst(string str) 
{ 
    if (string.IsNullOrEmpty(str)) 
     return string.Empty; 
    return char.ToUpper(str[0]) + str.Substring(1).ToLower(); 
} 

而且使用这样的:

string str = "thISstringLOokSHorribLE"; 
string upstr = UppercaseFirst(str); 

得到这个:

Thisstringlookshorrible 
相关问题