C# 字符串格式化
2011-08-24 10:05
211 查看
C# 字符串格式化
1、格式化标识符
标准的数学格式字符串用于返回通常使用的字符串。它们通常象X0这样的格式。X是格式化标识符,0是精度标识符。格式标识符号共有9种,它们代表了大多数常用的数字格式。就像下表所示:
2、ToString()格式化
formatCode 是可选的格式化代码字符串。(详细内容请搜索“格式化字符串”查看)
常用格式举例:
(1) int i=12345;
string s1 = i.ToString();
//结果= 12345
string s2= i.ToString("d8");
//结果= 00012345
(2) int i=123;
double j=123.45;
string s1=string.Format("the value is {0,7:d}",i);
//结果= 123
string s2=string.Format("the value is {0,7:f3}",j);
//结果= 123.450
(3)double i=12345.6789;
string s1 = i.ToString("f2");
//结果= 12345.68
string s2 = i.ToString("f6");
//结果= 12345.678900
(4)double i=12345.6789;
string s1 = i.ToString("n");
//结果= 12,345.68
string s2 = i.ToString(“n4”);
//结果= 12,345.6789
(5)double i=0.126;
string s = i.ToString("p");
//结果 12.6%
(6)DateTime dt =new DateTime(2003,5,25);
string s1 = dt.ToString("yy.M.d");
//结果 03.5.25
string s2 = dt.ToString(“yyyy年M月”);
//结果 2003年5月
Convert.ToDateTime("2005/12/22 22:22:22").ToString("yyyy/MM/dd HH:mm:ss")
"2005/12/22 22:22:22"
(7) int i=123;
double j=123.45;
string s=string.Format("i:{0,-7},j:{1,7}",i,j);
//-7表示左对齐,占7位
//结果i:123 ,j: 123.45
3、字符转ASCII码
public static int Asc(string character)
{
if (character.Length == 1)
{
System.Text.ASCIIEncoding asciiEncoding = new System.Text.ASCIIEncoding();
int intAsciiCode = (int)asciiEncoding.GetBytes(character)[0];
return (intAsciiCode);
}
else
{
throw new Exception("数据格式不正确.");
}
}
3、ASCII码转字符
public static string Chr(int asciiCode)
{
if (asciiCode >= 0 && asciiCode <= 255)
{
System.Text.ASCIIEncoding asciiEncoding = new System.Text.ASCIIEncoding();
byte[] byteArray = new byte[] { (byte)asciiCode };
string strCharacter = asciiEncoding.GetString(byteArray);
return (strCharacter);
}
else
{
throw new Exception("数据格式不正确.");
}
}
1、格式化标识符
标准的数学格式字符串用于返回通常使用的字符串。它们通常象X0这样的格式。X是格式化标识符,0是精度标识符。格式标识符号共有9种,它们代表了大多数常用的数字格式。就像下表所示:
字母 | 含义 |
C或c | Currency 货币格式 |
D或d | Decimal 十进制格式(十进制整数,不要和.Net的Decimal数据类型混淆了) |
E或e | Exponent 指数格式 |
F或f | Fixed point 固定精度格式 |
G或g | General 常用格式 |
N或n | 用逗号分割千位的数字,比如1234将会被变成1,234 |
P或p | Percentage 百分符号格式 |
R或r | Round-trip 圆整(只用于浮点数)保证一个数字被转化成字符串以后可以再被转回成同样的数字 |
X或x | Hex 16进制格式 |
C | 货币 | 2.5.ToString("C") | ¥2.50 |
D | 十进制数 | 25.ToString("D5") | 00025 |
E | 科学型 | 25000.ToString("E") | 2.500000E+005 |
F | 固定点 | 25.ToString("F2") | 25.00 |
G | 常规 | 2.5.ToString("G") | 2.5 |
N | 数字 | 2500000.ToString("N") | 2,500,000.00 |
X | 十六进制 | 255.ToString("X") | FF |
常用格式举例:
(1) int i=12345;
string s1 = i.ToString();
//结果= 12345
string s2= i.ToString("d8");
//结果= 00012345
(2) int i=123;
double j=123.45;
string s1=string.Format("the value is {0,7:d}",i);
//结果= 123
string s2=string.Format("the value is {0,7:f3}",j);
//结果= 123.450
(3)double i=12345.6789;
string s1 = i.ToString("f2");
//结果= 12345.68
string s2 = i.ToString("f6");
//结果= 12345.678900
(4)double i=12345.6789;
string s1 = i.ToString("n");
//结果= 12,345.68
string s2 = i.ToString(“n4”);
//结果= 12,345.6789
(5)double i=0.126;
string s = i.ToString("p");
//结果 12.6%
(6)DateTime dt =new DateTime(2003,5,25);
string s1 = dt.ToString("yy.M.d");
//结果 03.5.25
string s2 = dt.ToString(“yyyy年M月”);
//结果 2003年5月
Convert.ToDateTime("2005/12/22 22:22:22").ToString("yyyy/MM/dd HH:mm:ss")
"2005/12/22 22:22:22"
(7) int i=123;
double j=123.45;
string s=string.Format("i:{0,-7},j:{1,7}",i,j);
//-7表示左对齐,占7位
//结果i:123 ,j: 123.45
3、字符转ASCII码
public static int Asc(string character)
{
if (character.Length == 1)
{
System.Text.ASCIIEncoding asciiEncoding = new System.Text.ASCIIEncoding();
int intAsciiCode = (int)asciiEncoding.GetBytes(character)[0];
return (intAsciiCode);
}
else
{
throw new Exception("数据格式不正确.");
}
}
3、ASCII码转字符
public static string Chr(int asciiCode)
{
if (asciiCode >= 0 && asciiCode <= 255)
{
System.Text.ASCIIEncoding asciiEncoding = new System.Text.ASCIIEncoding();
byte[] byteArray = new byte[] { (byte)asciiCode };
string strCharacter = asciiEncoding.GetString(byteArray);
return (strCharacter);
}
else
{
throw new Exception("数据格式不正确.");
}
}
相关文章推荐
- C#字符串格式化
- 使用C#格式化字符串(转自博客园)
- c#时间格式化字符串
- string.Format对C#字符串格式化
- C# 字符串格式化
- C#格式化数值结果表(格式化字符串)
- C#格式化数值结果表(格式化字符串)
- C#.net格式化时间字符串达到不同的显示效果
- C#中字符串的格式化及转换成数值的方法
- C# String.Format格式化json字符串中包含"{" "}"报错问题
- c#时间格式化字符串详解
- C# IFormattable接口,实现自定义的字符串格式化方法
- C#字符串格式化 ->string.Format
- C#格式化json字符串的方法分析
- C#格式化字符串
- C# String.Format() 格式化字符串
- C#中的字符串格式化
- 编写高质量代码改善C#程序的157个建议[为类型输出格式化字符串、实现浅拷贝和深拷贝、用dynamic来优化反射]
- .NET C# Tostring() format 格式化字符串大全
- c#时间格式化字符串详解