.NET Framework格式化字符串

.NET Framework格式化字符串

2007-06-04 09:22620人阅读评论(0)收藏举报

.NET Framework 提供了可自定的、适于常用途的格式化机制,可将值转换为适合示的字符串。例如,可以将数格式化十六制、科学数法或者由用指定的点符号分隔成的一系列数字。可以将日期和时间格式化适合于特定的国家、地区或区域性。可以将枚常量格式化它的数或名称。

您可以通指定格式字符串和格式提供程序或使用默认设置来控制格式化。格式字符串包含一个或多个格式明符字符,以指示如何转换值。格式提供程序提供了转换特定型所需的其他控制、替和区域性等方面的信息。

您可以通过实现 IFormattable 接口来重写 .NET Framework 解格式化字符串的方法;通过实现 IFormatProvider 接口来提供您自己的格式提供程序;通过实现 ICustomFormatter 接口来行您自己的格式化。

.NET Framework 提供了名合格式化的功能,它使用一个或多个格式字符串将一个或多个格式化嵌入出字符串。出字符串可用于步处理,示到系控制台或者写入到流。

格式明符
.NET Framework
准和自定格式明符,用于格式化数字、日期和时间以及枚。各格式化出字符串的方法(例如 Console.WriteLine 和所有型的 ToString 方法),以及一些分析入字符串的方法(例如 DateTime.ParseExact)都使用格式化明符。

格式化数字数据的信息,数字格式字符串。有常用的数字格式明符的列表,准数字格式字符串;有自定格式明符(可用于建自己的格式字符串)的列表,自定数字格式字符串

于格式化日期和时间的信息,日期与时间格式字符串。有常用日期和时间格式明符的列表, DateTime 格式字符串;有自定义时间和日期格式明符(可用于建自己的格式字符串)的列表,自定 DateTime 格式字符串

格式化枚的信息,以及准枚格式明符的列表,格式字符串

分析和格式明符
格式化将型的值转字符串表示形式;分析与格式化相反,它是从字符串表示形式建数据型。格式提供程序控制如何行分析,一些方法(例如 DateTime.ParseExact)采用格式明符参数,可指示字符串表示形式的期格式。有分析的更多信息,分析字符串

ToString 和格式明符
.NET Framework
支持重载类型的默 ToString 方法,方法行基本格式化,版本 ToString 用版本,此版本使用格式明符参数来指示如何格式化。有更多信息,格式化基和 IFormattable 接口。

Format 函数返回根据格式 String 表达式中包含的指令
置格式的字符串。

1.

<%@ Page Language="C#" %>
<script runat="server">
protected void Page_Load(object sender, EventArgs e)
{
string a = "Clingingboy";
Response.Write(string.Format("
你的姓名是:{0}",a));//{0}表示占位符,传递给第二个参数来替换该占位符
string name = "Clingingboy";
string age = "20";
string city = "hangzhou";
Response.Write("<br>");
Response.Write(string.Format("
我的姓名是{1},年{0},来自{2}",age,name,city));
Response.Write(string.Format("<pre>{0,20}</pre>", "111"));//占位符

}
</script>


2.
格式化数

<%@ Page Language="C#" %>
<script language="C#" runat=server>
void Page_Load(Object sender , EventArgs e)
{
int intNum;
Decimal decNum;
intNum = 32001;
decNum = 32001.9099m;
// Decimal Format;
Response.Write( intNum.ToString( "d" ) + "<BR>" );
// => Displays 32001
// Exponential Format
Response.Write( intNum.ToString( "e" )+ "<BR>" );
// => Displays 3.200100e+004
Response.Write( decNum.ToString( "e" )+ "<BR>" );
// => Displays 3.200191e+004
// Fixed-Point Format
Response.Write( intNum.ToString( "f" ) + "<BR>");
// => Displays 32001.00
Response.Write( decNum.ToString( "f" ) + "<BR>");
// => Displays 32001.91
// General Format
Response.Write( intNum.ToString( "g" )+ "<BR>" );
// => Displays 32001
Response.Write( decNum.ToString( "g" )+ "<BR>" );
// => Displays 32001.9099
// Number Format
Response.Write( intNum.ToString( "n" )+ "<BR>" );
// => Displays 32,001.00
Response.Write( decNum.ToString( "n" )+ "<BR>" );
// => Displays 32,001.91
Response.Write(intNum.ToString("x") + "<BR>");
//7d01
}
</script>


使用Format来格式化

Response.Write(string.Format("{0:n}", 123456) + "<BR>");

<%@ Page Language="C#" %>
<script language="C#" runat=server>
void Page_Load(Object sender , EventArgs e)
{
int intNum;
Decimal decNum;
intNum = 32001;
decNum = 32001.9099m;
// Decimal Format;
Response.Write(string.Format("{0:n}", 123456) + "<BR>");//0
索引,n格式化
Response.Write( intNum.ToString( "d10" ) + "<BR>" );//
在数前面加0,位数10
Response.Write(intNum.ToString("n10") + "<BR>");//
小数位数
}
</script>


3.
格式化货币

<%@ Page Language="C#" %>
<script language="C#" runat=server>
void Page_Load(Object sender , EventArgs e)
{
decimal intNum;
intNum = 32001.4633m;
// Decimal Format;
Response.Write(string.Format("{0:c}", intNum) + "<BR>");//0
索引,n格式化
Response.Write(string.Format("{0:c3}", intNum) + "<BR>");
Response.Write(intNum.ToString("c") + "<BR>");//
小数位数位2
Response.Write( intNum.ToString( "c1" ) + "<BR>" );//
四舍五入
}
</script>

4.格式化日期和时间

<%@ Page Language="C#" %>
<body style="font-family:
宋体; font-size: 12px; color: sandybrown;">
</body>
<script language="C#" runat=server>
void Page_Load(Object sender , EventArgs e)
{
DateTime dtmDate;
dtmDate = DateTime.Now;
// short Date
Response.Write( dtmDate.ToString( "d" ) );
Response.Write("<br>" );
// => Displays 2/13/2001
// long Date
Response.Write( dtmDate.ToString( "D" ) );
Response.Write("<br>" );
// => Displays Tuesday, February 13, 2001
// long Date and short Time
Response.Write( dtmDate.ToString( "f" ) );
Response.Write("<br>" );
// => Displays Tuesday, February 13, 2001 3:40 PM
// long Date and long Time
Response.Write( dtmDate.ToString( "F" ) );
Response.Write("<br>" );
// => Displays Tuesday, February 13, 2001 3:41:04 PM
// short Date and short Time
Response.Write( dtmDate.ToString( "g" ) );
Response.Write("<br>" );
// => Displays 2/13/2001 3:42 PM
// short Date and long Time
Response.Write( dtmDate.ToString( "G" ) );
Response.Write("<br>" );
// => Displays 2/13/2001 3:42:52 PM
// Month and Day
Response.Write( dtmDate.ToString( "M" ) );
Response.Write("<br>" );
// => Displays February 13
// RFC 1123
Response.Write( dtmDate.ToString( "R" ) );
Response.Write("<br>" );
// => Displays Tue, 13 Feb 2001 15:44:52 GMT
// ISO 8601
Response.Write( dtmDate.ToString( "s" ) );
Response.Write("<br>" );
// => Displays 2001-02-13T15:45:55
// short Time
Response.Write( dtmDate.ToString( "t" ) );
Response.Write("<br>" );
// => Displays 3:47 PM
// long Time
Response.Write( dtmDate.ToString( "T" ) );
Response.Write("<br>" );
// => Displays 3:47:37 PM
// Universal ISO 8601
Response.Write( dtmDate.ToString( "u" ) );
Response.Write("<br>" );
// => Displays 2001-02-13 15:48:41Z
// Universal Time
Response.Write( dtmDate.ToString( "U" ) );
Response.Write("<br>" );
// => Displays Tuesday, February 13, 2001 11:49:51 PM
// Month and Year
Response.Write( dtmDate.ToString( "Y" ) );
Response.Write("<br>" );
// => Displays February, 2001
}
</script>

posted on 2012-03-30 13:40  Mayvar  阅读(713)  评论(0编辑  收藏  举报

导航