导出 (0) 打印
全部展开
此文章由机器翻译。 将光标移到文章的句子上,以查看原文。 更多信息。
译文
原文

TextInfo.ToTitleCase 方法

将指定字符串转换为词首字母大写(全部大写将被视为首字母缩写的词不包含在内)。

命名空间:  System.Globalization
程序集:  mscorlib(在 mscorlib.dll 中)

public string ToTitleCase(
	string str
)

参数

str
类型:System.String
要转换为词首字母大写的字符串。

返回值

类型:System.String
转换为词首字母大写的指定字符串。

异常条件
ArgumentNullException

strnull

通常情况下,字母大小写转换将单词的第一个字符转换为大写,将其余的字符转换为小写。 但是,此方法当前不能提供正确的大小写以转换全部是大写的单词,如首字母缩略词。 下表显示方法呈现多个字符串的方式。

输入

语言

预期的结果

实际结果

战争与和平

英语

战争与和平

战争与和平

Per anhalter durch die Galaxis

德语

Per Anhalter durch die Galaxis

Per Anhalter Durch Die Galaxis

les naufragés d'ythaq

法语

Les Naufragés d'Ythaq

Les Naufragés D'ythaq

如上所示,ToTitleCase 方法提供了语言上不一定正确的任意大小写行为。 语言上正确的解决方案将需要其他规则,并且当前算法简单一些且快一些。 我们保留将来降低此 API 速度的权力。

ToTitleCase 方法的当前实现可生成与输入字符串等长的输出字符串。 但是,这种行为并未予以保证,且在将来的实现中可能会更改。

下面的示例更改基于英语 (美国) 区域性的字符串的框中,使用区域性名称 en-us。


using System;
using System.Globalization;


public class SamplesTextInfo  {

   public static void Main()  {

      // Defines the string with mixed casing.
      string myString = "wAr aNd pEaCe";

      // Creates a TextInfo based on the "en-US" culture.
      TextInfo myTI = new CultureInfo("en-US",false).TextInfo;

      // Changes a string to lowercase.
      Console.WriteLine( "\"{0}\" to lowercase: {1}", myString, myTI.ToLower( myString ) );

      // Changes a string to uppercase.
      Console.WriteLine( "\"{0}\" to uppercase: {1}", myString, myTI.ToUpper( myString ) );

      // Changes a string to titlecase.
      Console.WriteLine( "\"{0}\" to titlecase: {1}", myString, myTI.ToTitleCase( myString ) );

   }

}

/*
This code produces the following output.

"wAr aNd pEaCe" to lowercase: war and peace
"wAr aNd pEaCe" to uppercase: WAR AND PEACE
"wAr aNd pEaCe" to titlecase: War And Peace

*/


下面的示例通过 ToTitleCase 方法在数组中的每个字符串。 字符串包含相应的前缀字符串以及首字母缩写词。 通过使用 en-us 区域性的约定,字符串转换为前缀大小写。


using System;
using System.Globalization;

public class Example
{
   public static void Main()
   {
      string[] values = { "a tale of two cities", "gROWL to the rescue",
                          "inside the US government", "sports and MLB baseball",
                          "The Return of Sherlock Holmes", "UNICEF and children"};

      TextInfo ti = CultureInfo.CurrentCulture.TextInfo;
      foreach (var value in values)
         Console.WriteLine("{0} --> {1}", value, ti.ToTitleCase(value));
   }
}
// The example displays the following output:
//    a tale of two cities --> A Tale Of Two Cities
//    gROWL to the rescue --> Growl To The Rescue
//    inside the US government --> Inside The US Government
//    sports and MLB baseball --> Sports And MLB Baseball
//    The Return of Sherlock Holmes --> The Return Of Sherlock Holmes
//    UNICEF and children --> UNICEF And Children


.NET Framework

受以下版本支持:4.5.2、4.5.1、4.5、4、3.5、3.0、2.0、1.1、1.0

.NET Framework Client Profile

受以下版本支持:4、3.5 SP1

Windows Phone 8.1, Windows Phone 8, Windows 8.1, Windows Server 2012 R2, Windows 8, Windows Server 2012, Windows 7, Windows Vista SP2, Windows Server 2008(不支持服务器核心角色), Windows Server 2008 R2(支持带 SP1 或更高版本的服务器核心角色;不支持 Itanium)

.NET Framework 并不是对每个平台的所有版本都提供支持。有关支持的版本的列表,请参阅.NET Framework 系统要求

社区附加资源

添加
显示:
© 2015 Microsoft