如何将句子中每个单词的首字母大写?

可能重复:
如何把每个句子的首字母大写?

public static string CapitalizeEachWord(this string sentence) { string[] words = sentence.Split(); foreach (string word in words) { word[0] = ((string)word[0]).ToUpper(); } } 

我正在尝试为我自己为未来项目创建的帮助程序类创建扩展方法。

这个特别应该适当地利用每个单词。 意思是,每个单词的第一个字母都应该大写。 我无法解决这个问题。

它说我无法将字符串转换为字符串,但我记得在某些时候能够做到这一点。 也许我忘了关键部分。

谢谢你的建议。

也许在TextInfo类中使用ToTitleCase方法

如何使用Visual C#将字符串转换为lower,upper或title(right)大小写

 CultureInfo cultureInfo = Thread.CurrentThread.CurrentCulture; TextInfo textInfo = cultureInfo.TextInfo; Console.WriteLine(textInfo.ToTitleCase(title)); 

我是这样做的:

 public static string ProperCase(string stringToFormat) { CultureInfo cultureInfo = Thread.CurrentThread.CurrentCulture; TextInfo textInfo = cultureInfo.TextInfo; // Check if we have a string to format if (String.IsNullOrEmpty(stringToFormat)) { // Return an empty string return string.Empty; } // Format the string to Proper Case return textInfo.ToTitleCase(stringToFormat.ToLower()); } 

试试这个:

  string inputString = "this is a test"; string outputString = CultureInfo.CurrentCulture.TextInfo.ToTitleCase(inputString);