C#格式化信息,格式化数字、格式化日期
一、格式化方法:
1、ToString()实例方法
使用当前文化:
varname.ToString("C4");
使用特定文化:
varname.ToString("C4", new CultureInfo("en-us"));
varname.ToString("C4", CultureInfo.CreateSpecifiCulture("zh-CN"));
2、Format()静态方法
string.Format("{0:C4}",varname);
string.Format(CultureInfo.InvariantCulture,"{0:C4}",varname);
3、Console.Write()方法
Console.Write("{0:C4}",varname);
4、区域设置:
s1 = 4123.ToString("C", CultureInfo.InvariantCulture);//¤4,123.00
s2 = 4123.ToString("C", new CultureInfo("en-us", false).NumberFormat);//$4,123.00
s3 = DateTime.Now.ToString("f", CultureInfo.InvariantCulture);//Tuesday, 25 June 2019 08:53
s4 = DateTime.Now.ToString("f", new CultureInfo("en-us", false).DateTimeFormat);//Tuesday, June 25, 2019 8:53 AM
改变当前线程的文化:
Thread.CurrentThread.CurrentCulture = CultureInfo.InvariantCulture;
二、格式化数字(格式符不区分大小写)
1、格式化整数(对小数将引发异常),格式符后的数字表示总位数
(1)、格式化为整数,“D”,“Dx”:
string s1, s2;
s1 = 4123.ToString("D");//4123
s2 = 4123.ToString("D6");//004123 Console.WriteLine(s1);
Console.WriteLine(s2);
(2)、格式化成十六进制形式,“X”,“Xx”:
s1 = 4123.ToString("X");//101B
s2 = 4123.ToString("X6");//00101B
2、格式化数字,格式符后的数字表示小数位数,可四舍五入。
(1)、货币形式:“C”,“Cx”,默认两位小数,有逗号
s1 = 4123.ToString("C");//¥4,123.00
s2 = 4123.ToString("C3");//¥4,123.000
(2)、数值形式:“N”,“Nx”,默认两位小数,有逗号
s1 = 4123.ToString("N");//4,123.00
s2 = 4123.ToString("N3");//4,123.000
(3)、定点形式:“F”,“Fx”,默认两位小数,无逗号
s1 = 4123.ToString("F");//4123.00
s2 = 4123.ToString("F3");//4123.000
(4)、指数形式:“E”,”Ex”,默认六位小数:
s1 = 4123.ToString("E");//4.123000E+003
s2 = 4123.7328.ToString("E3");//4.124E+003
3、自定义格式:
0位零占位符,#为空占位符。
s1 = 4123.ToString("000.000");//4123.000
s2 = 4123.ToString("##.###");//4123
s3 = 4123.ToString("0%");//412300%
s4 = 4123.7328.ToString("000.000");//4123.733
s5 = 4123.7328.ToString("##.###");//4123.733
s6 = 4123.7328.ToString("0%");//412373%
4、IFormatProvider接口
- 1、CultureInfo:表示一个特殊的区域
- 2、NumberFormatInfo:特定区域数字格式信息。
- 3、DateTimeFormatInfo:特定区域日期时间格式信息。具有Calender属性可设置。
三、格式化日期和时间
1、标准格式:
(1)完整格式(Full,包括日期和时间),“F”,“f”,注意:”f“仅精确到分。
s1=DateTime.Now.ToString("F");//2019年6月24日 17:14:08
s2=DateTime.Now.ToString("f");//2019年6月24日 17:14
(2)常规完整格式(General):“G”,“g”。注意:无中文和英文显示,仅符号:”g“仅精确到分钟。
s1=DateTime.Now.ToString("G");//2019-06-24 17:14:54
s2=DateTime.Now.ToString("g");//2019-06-24 17:14
(3)年月日(Day,日期)”D”,“d”。注意:”d”无中文和英文显示,仅符号.
s1=DateTime.Now.ToString("D");//2019年6月24日
s2=DateTime.Now.ToString("d");//2019-06-24
(4)年月(Year)“Y”,“y”(不分大小写)
s1=DateTime.Now.ToString("Y");//2019年6月
s2=DateTime.Now.ToString("y");//2019年6月
(5)月日(Month)“M”,“m”(不分大小写)
s1=DateTime.Now.ToString("M");//6月24日
s2=DateTime.Now.ToString("m");//6月24日
(6)时间(Time)“T”,“t”,注意:”t“仅精确到分。
s1=DateTime.Now.ToString("T");//17:17:29
s2=DateTime.Now.ToString("t");//17:17
2、自定义格式:
常见格式:yyyy-MM-dd HH:mm:ss
(1)公元:“%g”:
s1=DateTime.Now.ToString("%g");//公元
(2)年: “%y”,“yy”(前导0),“yyy”,“yyyy”,
s1=DateTime.Now.ToString("%y");//19
s2=DateTime.Now.ToString("yy");//19
s3=DateTime.Now.ToString("yyy");//2019
s4=DateTime.Now.ToString("yyyy");//2019
(3)月:“%M”,“MM”(前导0),“MMM”,“MMMM”,
s1=DateTime.Now.ToString("%M");//6
s2=DateTime.Now.ToString("MM");//06
s3=DateTime.Now.ToString("MMM");//六月
s4=DateTime.Now.ToString("MMMM");//六月
(4)日:“%d”,“dd”(前导0):
s1=DateTime.Now.ToString("%d");//24
s2=DateTime.Now.ToString("dd");//24
(5)星期:“ddd”,“dddd”(全拼):
s1=DateTime.Now.ToString("ddd");//周一
s2=DateTime.Now.ToString("dddd");//星期一
(6)上下午:“%t”,“tt”(全拼):
s1=DateTime.Now.ToString("%t");//下
s2=DateTime.Now.ToString("tt");//下午
(7)小时:“%h”(12小时制),“yy”(前导0),“%H”(24小时制),“HH”(前导0)
s1=DateTime.Now.ToString("%h");//5
s2=DateTime.Now.ToString("hh");//05
s3=DateTime.Now.ToString("%H");//17
s4=DateTime.Now.ToString("HH");//17
(8)分钟:“%m”,“mm”(前导0):
s1=DateTime.Now.ToString("%m");//29
s2=DateTime.Now.ToString("mm");//29
(9)秒:“%s”,“ss”(前导0):
s3=DateTime.Now.ToString("%s");//45
s4=DateTime.Now.ToString("ss");//45
(10)日期间隔符”%/”,时间间隔符:“%:”:
s1=DateTime.Now.ToString("%/");//-
s2=DateTime.Now.ToString("%:");//:
3、获取日期的英文缩写
s1 = DateTime.Now.ToString("MMM", CultureInfo.InvariantCulture);//Jun
s2 = new CultureInfo("en-us", false).DateTimeFormat.GetAbbreviatedMonthName(6);//Jun:
s3 = new string[] { "Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec" }[DateTime.Now.Month - 1];//Jun
C#格式化信息,格式化数字、格式化日期的更多相关文章
- Java基础(三十五)Math、Random类和数字格式化(String.format方法)
一.Math类 Math类常用的方法: public static long abs (double a) 返回a的绝对值 public static double max (double a,dou ...
- Python 数字系列-数字格式化输出
数字的格式化输出 问题 你需要将数字格式化后输出,并控制数字的位数.对齐.千位分隔符和其他的细节. 解决方案 格式化输出单个数字的时候,可以使用内置的 format() 函数,比如: >> ...
- 重温JSP学习笔记--与日期数字格式化有关的jstl标签库
上一篇笔记写的主要是JSTL的core标签库,如果想对一些数字或者日期做一些操作或者在网页上显示指定格式的数字或日期,jstl还提供了另一个fmt标签库,这里简单介绍一下: 第一步,导入标签库: &l ...
- spring mvc4的日期/数字格式化、枚举转换
日期.数字格式化显示,是web开发中的常见需求,spring mvc采用XXXFormatter来处理,先看一个最基本的单元测试: package com.cnblogs.yjmyzz.test; i ...
- [应用篇]第五篇 JSTL之fmt标签日期和数字格式化
fmt标签个人用的比较少,但是我还是在这里简单的留一下笔记,也是算是学习了一下!这样方便你们课设的时候能用的上,要学会进步的学习,不要停留! 引入该标签库的方法为: <%@ taglib pre ...
- 【2021新】C#数字格式化字符串
引用来源: https://www.cnblogs.com/flyingbread/archive/2007/01/18/620287.html https://www.cnblogs.com/117 ...
- PHP date 格式化一个本地时间/日期
PHP date 格式化一个本地时间/日期 date (PHP 4, PHP 5) date — 格式化一个本地时间/日期 说明 string date ( string $format [, int ...
- String.Format数字格式化参考
String.Format数字格式化输出 {0:N2} {0:D2} {0:C2} (转) 数字 {0:N2} 12.36 数字 {0:N0} 13 货币 {0:c2} $12.36 货币 {0:c4 ...
- BigDecimal的用法详解(保留两位小数,四舍五入,数字格式化,科学计数法转数字,数字里的逗号处理)
转自:https://blog.csdn.net/ochangwen/article/details/51531866 一.简介 Java在java.math包中提供的API类BigDecimal,用 ...
- String.Format数字格式化输出 {0:N2} {0:D2} {0:C2} (转)
String.Format数字格式化输出 {:N2} {:D2} {:C2} (转) //格式为sring输出 // Label1.Text = string.Format("asdfads ...
随机推荐
- TCP/IP学习笔记8--数据链路之基本概念
"在你生命的最初30年中,你养成习惯:在你生命的最后30年中,你的习惯决定了你."---- Steve Jobs TCP/IP对于OSI参考模型的数据链路成及以下部分(物理层)没有 ...
- Spring初解
1,关于spring容器: spring容器是Spring的核心,该 容器负责管理spring中的java组件, ApplicationContext ctx = new ClassPathXmlA ...
- [转帖]nginx基础整理
nginx基础整理 https://www.cnblogs.com/guigujun/p/6588545.html 目录结构如下: Nginx基础知识 Nginx HTTP服务器的特色及优点 Ngin ...
- [Oracle] - 使用 DBMS_UTILITY 查看异常详情
DBMS_UTILITY.FORMAT_ERROR_BACKTRACE说明:这是在Oracle 10g数据库引入的,DBMS_UTILITY.FORMAT_ERROR_BACKTRACE内置函数返回一 ...
- 高可用etcd集群(三节点) + ssl双向认证
# etcd下载地址 https://github.com/etcd-io/etcd/tags wget https://github.com/etcd-io/etcd/releases/downlo ...
- FFmpeg中AVFrame.linesize的含义
在第一节FFmpeg开发教程一.FFmpeg 版 Hello world中遇到一个问题,在保存YUV的时候,粗暴的使用: fwrite(buf, 1, xsize * ysize, f); 方式去拷贝 ...
- 准备写个Golang开发的教程
进入golang的开发已经差不多两年了,最近打算写个Golang的教程.目的是让有开发基础,没接触过Golang的人能够愉快高效地写出Golang项目. 1 记得17年底时候,有个特别小的项目,准备试 ...
- High load average analyze
https://www.tummy.com/articles/isolating-heavy-load/ https://www.tecmint.com/understand-linux-load-a ...
- Golang高并发抓取HTML图片
Golang高并发抓取HTML图片 使用准备 1.安装Golang 2.下载爬虫包 go get -v github.com/hunterhug/marmot/util go get -v githu ...
- Jquery DataTables 服务器后端分页 Ajax请求添加自定义参数.
项目使用AdminLTE(基于Bootstrap 二次开发的框架)作为开发框架. 使用DataTables 的时候部分页面需要传参 给后台做筛选过滤. 但是不知道怎么将DataTables的参数 和自 ...