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对象 >> ...
随机推荐
- wpf中通过ObjectDataProvider实现文本框的双向数据绑定(ps:适用于在文本框比较多的时候使用)
前端代码: 也页面的xaml中引入ObjectDataProvider: <Window.Resources> <ResourceDictionary> <ObjectD ...
- Python中给List添加元素的4种方法
https://blog.csdn.net/hanshanyeyu/article/details/78839266 List 是 Python 中常用的数据类型,它一个有序集合,即其中的元素始终保持 ...
- python的数据库链接
https://blog.csdn.net/canofy/article/details/83294330#-*-coding:utf-8-*-import MySQLdb #yum update p ...
- 手动建立mapping以及增加属性
只能创建index时手动建立mapping,或者新增field mapping,但是不能update field mapping 1.手动建立mappingPUT /website{ "ma ...
- 集成xxl-job分布式任务调度平台
首先声明,本篇博文基于springboot,基于spring的请自行研究. (一)启动控制平台 首先将xxl-job-master.zip下载下来,然后在mysql数据库创建xxl-job数据库. 执 ...
- dedecms前端无法调用自定义变量怎么解决
网友问ytkah说他的dedecms前端无法调用自定义变量要怎么解决,登录他的网站后台看了一下,自定义变量已经添加了,也写入了数据库表中,但是就是前台没办法调用出来,后面想想可能是文件权限不够,具体是 ...
- RN无限轮播以及ScrollView的大小调节问题
如果你的ScrollView的大小是全屏,height不能用,这种情况需要给ScrollView添加一个容器View,然后调节容器View的大小 无限轮播这里我使用的是一个第三方的插件react-na ...
- centos mysql 实战 第一节课 安全加固 mysql安装
centos mysql 实战 第一节课 安全加固 mysql安装 percona名字的由来=consultation 顾问+performance 性能=per con a mysql ...
- 0703-spring cloud config-git配置属性加解密之对称加密
一.概述 可以使用{cipher} *格式的加密值,只要有一个有效的密钥,那么它们将在主应用程序上下文获取环境之前被解密.要在应用程序中使用加密功能,您需要在您的类路径中包含Spring Securi ...
- Nancy Web框架 文档
http://liulixiang1988.github.io/nancy-webkuang-jia.html 中文 https://github.com/NancyFx/Nancy/wiki/Doc ...