c#关于字符串格式化
1. 如何使用文化来格式化日期
如:
/// <summary>
/// 根据语言获取文化名称
/// </summary>
/// <returns></returns>
public static string GetCultureName()
{
string cultureName;
switch (MLocalization.language)
{
case "Japanese":
cultureName = "ja-JP";
break; case "Taiwan":
cultureName = "zh-TW";
break; case "English":
cultureName = "en-US";
break; case "Korean":
cultureName = "ko-KR";
break; default:
throw new InvalidOperationException("Not support language: " + MLocalization.language);
} return cultureName;
} string cultureName = TextLocalization.GetCultureName();
var ci = new CultureInfo(cultureName);
DateTime.Now.ToString("yyyy MM/dd(ddd) HH:mm", ci)
example
文化列表可参考:
https://msdn.microsoft.com/en-us/library/ee825488(v=cs.20).aspx
2. 标准数字格式字符串
可参考:
https://msdn.microsoft.com/zh-cn/library/dwhawy9k(v=vs.110).aspx
| 格式说明符 | 名称 | 描述 | 示例 |
|---|---|---|---|
| “C”或“c” | 货币 | 结果:货币值。
受以下类型支持:所有数值类型。 精度说明符:小数位数。 默认值精度说明符:由 NumberFormatInfo.CurrencyDecimalDigits 定义。 更多信息:货币(“C”)格式说明符。 |
123.456 ("C", en-US) -> $123.46
123.456 ("C", fr-FR) -> 123,46 € 123.456 ("C", ja-JP) -> ¥123 -123.456 ("C3", en-US) -> ($123.456) -123.456 ("C3", fr-FR) -> -123,456 € -123.456 ("C3", ja-JP) -> -¥123.456 |
| “D”或“d” | Decimal | 结果:整型数字,负号可选。
受以下类型支持:仅整型。 精度说明符:最小位数。 默认值精度说明符:所需的最小位数。 更多信息:十进制(“D”)格式说明符。 |
1234 ("D") -> 1234
-1234 ("D6") -> -001234 |
| “E”或“e” | 指数(科学型) | 结果:指数记数法。
受以下类型支持:所有数值类型。 精度说明符:小数位数。 默认值精度说明符:6。 更多信息:指数(“E”)格式说明符。 |
1052.0329112756 ("E", en-US) -> 1.052033E+003
1052.0329112756 ("e", fr-FR) -> 1,052033e+003 -1052.0329112756 ("e2", en-US) -> -1.05e+003 -1052.0329112756 ("E2", fr_FR) -> -1,05E+003 |
| “F”或“f” | 定点 | 结果:整数和小数,负号可选。
受以下类型支持:所有数值类型。 精度说明符:小数位数。 默认值精度说明符:由 NumberFormatInfo.NumberDecimalDigits 定义。 更多信息:定点(“F”)格式说明符。 |
1234.567 ("F", en-US) -> 1234.57
1234.567 ("F", de-DE) -> 1234,57 1234 ("F1", en-US) -> 1234.0 1234 ("F1", de-DE) -> 1234,0 -1234.56 ("F4", en-US) -> -1234.5600 -1234.56 ("F4", de-DE) -> -1234,5600 |
| “G”或“g” | 常规 | 结果:最紧凑的定点表示法或科学记数法。
受以下类型支持:所有数值类型。 精度说明符:有效位数。 默认值精度说明符:取决于数值类型。 更多信息:常规(“G”)格式说明符。 |
-123.456 ("G", en-US) -> -123.456
-123.456 ("G", sv-SE) -> -123,456 123.4546 ("G4", en-US) -> 123.5 123.4546 ("G4", sv-SE) -> 123,5 -1.234567890e-25 ("G", en-US) -> -1.23456789E-25 -1.234567890e-25 ("G", sv-SE) -> -1,23456789E-25 |
| “N”或“n” | 数字 | 结果:整数和小数、组分隔符和小数分隔符,负号可选。
受以下类型支持:所有数值类型。 精度说明符:所需的小数位数。 默认值精度说明符:由 NumberFormatInfo.NumberDecimalDigits 定义。 更多信息:数字(“N”)格式说明符。 |
1234.567 ("N", en-US) -> 1,234.57
1234.567 ("N", ru-RU) -> 1 234,57 1234 ("N1", en-US) -> 1,234.0 1234 ("N1", ru-RU) -> 1 234,0 -1234.56 ("N3", en-US) -> -1,234.560 -1234.56 ("N3", ru-RU) -> -1 234,560 |
| “P”或“p” | 百分比 | 结果:乘以 100 并显示百分比符号的数字。
受以下类型支持:所有数值类型。 精度说明符:所需的小数位数。 默认值精度说明符:由 NumberFormatInfo.PercentDecimalDigits 定义。 更多信息:百分比(“P”)格式说明符。 |
1 ("P", en-US) -> 100.00 %
1 ("P", fr-FR) -> 100,00 % -0.39678 ("P1", en-US) -> -39.7 % -0.39678 ("P1", fr-FR) -> -39,7 % |
| “R”或“r” | 往返过程 | 结果:可以往返至相同数字的字符串。
受以下类型支持:Single、Double 和 BigInteger。 精度说明符:忽略。 更多信息:往返过程(“R”)格式说明符。 |
123456789.12345678 ("R") -> 123456789.12345678
-1234567890.12345678 ("R") -> -1234567890.1234567 |
| “X”或“x” | 十六进制 | 结果:十六进制字符串。
受以下类型支持:仅整型。 精度说明符:结果字符串中的位数。 更多信息:十六进制(“X”)格式说明符。 |
255 ("X") -> FF
-1 ("x") -> ff 255 ("x4") -> 00ff -1 ("X4") -> 00FF |
转载请注明出处:http://www.cnblogs.com/jietian331/p/6382801.html
c#关于字符串格式化的更多相关文章
- Python高手之路【六】python基础之字符串格式化
Python的字符串格式化有两种方式: 百分号方式.format方式 百分号的方式相对来说比较老,而format方式则是比较先进的方式,企图替换古老的方式,目前两者并存.[PEP-3101] This ...
- Java 字符串格式化详解
Java 字符串格式化详解 版权声明:本文为博主原创文章,未经博主允许不得转载. 微博:厉圣杰 文中如有纰漏,欢迎大家留言指出. 在 Java 的 String 类中,可以使用 format() 方法 ...
- Python(四)装饰器、迭代器&生成器、re正则表达式、字符串格式化
本章内容: 装饰器 迭代器 & 生成器 re 正则表达式 字符串格式化 装饰器 装饰器是一个很著名的设计模式,经常被用于有切面需求的场景,较为经典的有插入日志.性能测试.事务处理等.装饰器是解 ...
- C++字符串格式化库:CPPFormatLibrary
这个是很久之前写的,去年总结了一下,将其单独提取出来,作为一个开源库放到了GitHub上,然而CPPFormat之类的名字都已经被抢注了,结果只好注册了一个这么蛋疼的名字:CPPFormatLibra ...
- js字符串格式化扩展方法
平时使用js的时候会遇到很多需要拼接字符串的时候,如果是遇到双引号和单引号混合使用,经常会搞混.在C#中有string.Format方法,使用起来非常方便,也很容易理解,所以找到一种参考C#的form ...
- JAVA字符串格式化-String.format()的使用(转)
常规类型的格式化 String类的format()方法用于创建格式化的字符串以及连接多个字符串对象.熟悉C语言的同学应该记得C语言的sprintf()方法,两者有类似之处.format()方法有两种重 ...
- Python字符串格式化
一.使用格式化符来格式化字符串: Python支持的所有格式化符 格式化符 意义 'd' 返回要格式化对象的十进制表示,如果可以 'i' 返回要格式化对象的十进制表示,如果可以 'o' 返回要格式化对 ...
- Python 字符串格式化
Python 字符串格式化 Python的字符串格式化有两种方式: 百分号方式.format方式 百分号的方式相对来说比较老,而format方式则是比较先进的方式,企图替换古老的方式,目前两者并存 一 ...
- Python学习之路——基础篇(1)字符串格式化
字符串格式化 Python的字符串格式化有两种方式: 百分号方式.format方式 百分号的方式相对来说比较老,而format方式则是比较先进的方式,企图替换古老的方式,目前两者并存. 百分号方式 ...
- Java学习笔记 02 String类、StringBuilder类、字符串格式化和正则表达式
一.String类一般字符串 声明字符串 >>String str 创建字符串 >>String(char a[])方法用于将一个字符数组创建为String对象 >> ...
随机推荐
- xcode工程编译错误:"An instance 0xca90200 of class UITableView was deallocated while key value observers were still registered with it"
An instance 0xca90200 of class UITableView was deallocated while key value observers were still regi ...
- ios -RunLoop(简单理解)
一. RunLoop简介 RunLoop字面意思是运行时,即跑圈得意思.它可以在我们需要的时候自己跑起来运行,在我们没有操作的时候就停下来休息,充分节省CPU资源,提高程序性能. 二. RunLoop ...
- [development][dpdk] dpdk与CONFIG_RTE_MAX_MEMSEG有关的错误
dpdk程序无法启动, 错误如下: EAL: Requesting pages of size 2MB EAL: Requesting pages of size 2MB EAL: Can only ...
- ms sql server 游标
很简单的一个小例子. /****** Object: StoredProcedure [dbo].[usp_test] Script Date: 10/28/2016 15:08:31 ******/ ...
- day3_列表
一.列表 列表也通常被称为list 数组 array 1.列表定义 使用方括号([])即可 alist = [123,'abc','def',666,True] 空列表的定义:alist = [] 或 ...
- 《HTTP - 概述》
晚上听着 木小雅<可能否>,让我这暴躁的一天得以回复一下. 学习是长久之事,不能急躁.应该系统的去学习一些东西. 1:HTTP 最严谨的叫法应该是 超文本转移协议,但大家一般都叫做 超文本 ...
- (4.5)mysql备份还原——深入解析二进制日志(1)binlog的3种工作模式与配置
(4.5)mysql备份还原——深入解析二进制日志(binlog) 关键词:二进制日志,binlog日志 0.建议 (1)不建议随便去修改binlog格式(数据库级别) (2)binlog日志的清理 ...
- (1.6)MySQL执行计划
关键词:mysql执行计划 1.用法 [1.1]explain select * from tab_name........ [1.2]desc select * from tab_name..... ...
- Redis缓存机制一为什么要用Redis
1.持久化数据库的缺点 1)存储在部署数据库的硬盘上 平时我们使用的关系型数据库有MySql,Oracle以及SqlServer等,通常通过数据驱动来链接数据库进行增删改查. 那么 ...
- 微信小程序首支视频广告片发布
自2017年1月9日上线以来,微信小程序瞬间引爆网络,又迅速归于平静.对这个“无需安装.触手可及.用完即走.无需卸载”的小程序,微信从一开始就对它寄予了无限期望.在公布一系列规则更改后,微信小程序终于 ...