不管创建什么类型的应用程序,你都需要使用字符串。无论数据如何存储,终端用户总要与可读的文本打交道。因此,了解如何使用字符串是任何.NET开发者创建丰富的应用程序所需要学习的必要知识。
使用C#字符串
使用C#字符串是创建高质量应用程序的一个必要的技巧。即使你在处理数字或图像数据,终端用户也需要上下文反馈。本文将向你介绍.NET字符串,如何格式它们,操作它们和比较它们,及其它有用的操作。
1 .NET字符串简介
在.NET框架和通用语言运行时刻(CLR)以前,开发者总是花费大量时间处理字符串。一个字符串例程可重用库几乎是每一个C和C++程序员的工具箱中的一部分。编写在不同程序语言之间交换字符串数据的代码也是相当困难的。例如,Pascal把字符串存储为一个内存字符数组,其中,该数组的第一个元素指示字符串的长度;而C把字符串存储为一个具有可变长度的字符内存数组,字符串的末端加上一个ASCII null字符(在C中以"\0"表示)。
在.NET框架中,字符串以常量方式存储。这意味着,当你用C#(或任何其它.NET语言)创建一个字符串时,该字符串以一种固定大小存储在内存以便CLR运行更快些。结果是,当你实现例如连接字符串或修改一个字符串中的单个字符时,CLR实际上是创建你的字符串的多个副本。
C#中的字符串与其它值类型例如整数或浮点数声明方式相同,见下面的例子:
- string x = "Hello World";
- string y;
- string z = x;
2 格式化C#字符串
当使用字符串时最常见的一项任务是格式化字符串。当向用户显示信息时,你经常显示如日期,时间,数字值,十进制值,货币值,甚至象十六进制数字这样的内容。C#字符串都能够显示这些类型的信息,甚至更多。另外一个强有力的特征是,当你使用该标准格式化工具时,该格式化的输出具有地区感知特征。例如,如果你以短格式显示一个英格兰用户的当前日期,那么对于一个美国用户来说,当前日期的短格式将以不同形式显示。
为了创建一个格式化的字符串,你仅需要调用string类的Format方法,并且传递给它一个格式字符串,如下列代码所显示的:
- string formatted = string.Format("The value is {0}", value);
在此,{0}占位符指示一个值应该被插入的位置。除了指定一个值应该被插入的位置外,你还可以指定该值的格式。
【编辑推荐】