C# ToString()方法一些特殊用法

2023-05-16

转帖:http://hi.baidu.com/crp8/blog/item/d19ab0cc131b8f1300e92869.html

一、取中文日期显示
1、年月日时分
       currentTime.ToString("f"); //不显示秒
2、年月
       currentTime.ToString("y");
3、月日
       currentTime.ToString("m");
4、格式为:2003-9-23
       currentTime.ToString("d");
5、格式为:14:24
       currentTime.ToString("t");

二、字符型转换 转为字符串
12345.ToString("n"); //结果:12,345.00
12345.ToString("C");    //结果:¥12,345.00
12345.ToString("e");    //结果:1.234500e+004
12345.ToString("f4");    //结果:12345.0000
12345.ToString("x"); //结果:3039 (16进制)
12345.ToString("p");    //结果:1,234,500.00%

----------------------------------------------------------------------

令DateTime.Now为2007-7-17 22:07:24
1、DateTime.Now.ToString("yy-MM-dd")
处理后:07-07-17
2、DateTime.Now.ToString("yy年MM月dd日")
处理后:07年07月17日(中文样式)

注:
d 月中的某一天。一位数的日期没有前导零。
dd 月中的某一天。一位数的日期有一个前导零。

ddd 周中某天的缩写名称,在 AbbreviatedDayNames 中定义。

dddd 周中某天的完整名称,在 DayNames 中定义。

M 月份数字。一位数的月份没有前导零。

MM 月份数字。一位数的月份有一个前导零。

MMM 月份的缩写名称,在 AbbreviatedMonthNames 中定义。

MMMM 月份的完整名称,在 MonthNames 中定义。

y 不包含纪元的年份。如果不包含纪元的年份小于 10,则显示不具有前导零的年份。

yy 不包含纪元的年份。如果不包含纪元的年份小于 10,则显示具有前导零的年份。

yyyy 包括纪元的四位数的年份。

h 12 小时制的小时。一位数的小时数没有前导零。

hh 12 小时制的小时。一位数的小时数有前导零。

H 24 小时制的小时。一位数的小时数没有前导零。

HH 24 小时制的小时。一位数的小时数有前导零。

m 分钟。一位数的分钟数没有前导零。

mm 分钟。一位数的分钟数有一个前导零。

s 秒。一位数的秒数没有前导零。

ss 秒。一位数的秒数有一个前导零。


网上收集的DateTime技巧
出处:http://www.i170.com/article/52219
//大家在做报表或查询的时候都会有给用户预设一些可选的日期范围
//如本年度销售额、本季度利润、本月新增客户
//C#里内置的DateTime基本上都可以实现这些功能,巧用DateTime会使你处理这些事来变轻松多了

//今天
DateTime.Now.Date.ToShortDateString();
//昨天,就是今天的日期减一
DateTime.Now.AddDays(-1).ToShortDateString();
//明天,同理,加一
DateTime.Now.AddDays(1).ToShortDateString();

//本周(要知道本周的第一天就得先知道今天是星期几,从而得知本周的第一天就是几天前的那一天,要注意的是这里的每一周是从周日始至周六止
DateTime.Now.AddDays(Convert.ToDouble((0 - Convert.ToInt16(DateTime.Now.DayOfWeek)))).ToShortDateString();
DateTime.Now.AddDays(Convert.ToDouble((6 - Convert.ToInt16(DateTime.Now.DayOfWeek)))).ToShortDateString();
//如果你还不明白,再看一下中文显示星期几的方法就应该懂了
//由于DayOfWeek返回的是数字的星期几,我们要把它转换成汉字方便我们阅读,有些人可能会用switch来一个一个地对照,其实不用那么麻烦的              
string[] Day = new string[] { "星期日", "星期一", "星期二", "星期三", "星期四", "星期五", "星期六" };
Day[Convert.ToInt16(DateTime.Now.DayOfWeek)];

//上周,同理,一个周是7天,上周就是本周再减去7天,下周也是一样
DateTime.Now.AddDays(Convert.ToDouble((0 - Convert.ToInt16(DateTime.Now.DayOfWeek))) - 7).ToShortDateString();
DateTime.Now.AddDays(Convert.ToDouble((6 - Convert.ToInt16(DateTime.Now.DayOfWeek))) - 7).ToShortDateString();
//下周
DateTime.Now.AddDays(Convert.ToDouble((0 - Convert.ToInt16(DateTime.Now.DayOfWeek))) + 7).ToShortDateString();
DateTime.Now.AddDays(Convert.ToDouble((6 - Convert.ToInt16(DateTime.Now.DayOfWeek))) + 7).ToShortDateString();
//本月,很多人都会说本月的第一天嘛肯定是1号,最后一天就是下个月一号再减一天。当然这是对的
//一般的写法
DateTime.Now.Year.ToString() + DateTime.Now.Month.ToString() + "1"; //第一天
DateTime.Parse(DateTime.Now.Year.ToString() + DateTime.Now.Month.ToString() + "1").AddMonths(1).AddDays(-1).ToShortDateString();//最后一天

//巧用C#里ToString的字符格式化更简便
DateTime.Now.ToString("yyyy-MM-01");
DateTime.Parse(DateTime.Now.ToString("yyyy-MM-01")).AddMonths(1).AddDays(-1).ToShortDateString();

//上个月,减去一个月份
DateTime.Parse(DateTime.Now.ToString("yyyy-MM-01")).AddMonths(-1).ToShortDateString();
DateTime.Parse(DateTime.Now.ToString("yyyy-MM-01")).AddDays(-1).ToShortDateString();
//下个月,加去一个月份
DateTime.Parse(DateTime.Now.ToString("yyyy-MM-01")).AddMonths(1).ToShortDateString();
DateTime.Parse(DateTime.Now.ToString("yyyy-MM-01")).AddMonths(2).AddDays(-1).ToShortDateString();
//7天后
DateTime.Now.Date.ToShortDateString();
DateTime.Now.AddDays(7).ToShortDateString();
//7天前
DateTime.Now.AddDays(-7).ToShortDateString();
DateTime.Now.Date.ToShortDateString();

//本年度,用ToString的字符格式化我们也很容易地算出本年度的第一天和最后一天
DateTime.Parse(DateTime.Now.ToString("yyyy-01-01")).ToShortDateString();
DateTime.Parse(DateTime.Now.ToString("yyyy-01-01")).AddYears(1).AddDays(-1).ToShortDateString();
//上年度,不用再解释了吧
DateTime.Parse(DateTime.Now.ToString("yyyy-01-01")).AddYears(-1).ToShortDateString();
DateTime.Parse(DateTime.Now.ToString("yyyy-01-01")).AddDays(-1).ToShortDateString();
//下年度
DateTime.Parse(DateTime.Now.ToString("yyyy-01-01")).AddYears(1).ToShortDateString();
DateTime.Parse(DateTime.Now.ToString("yyyy-01-01")).AddYears(2).AddDays(-1).ToShortDateString();

//本季度,很多人都会觉得这里难点,需要写个长长的过程来判断。其实不用的,我们都知道一年四个季度,一个季度三个月
//首先我们先把日期推到本季度第一个月,然后这个月的第一天就是本季度的第一天了
DateTime.Now.AddMonths(0 - ((DateTime.Now.Month - 1) % 3)).ToString("yyyy-MM-01");
//同理,本季度的最后一天就是下季度的第一天减一
DateTime.Parse(DateTime.Now.AddMonths(3 - ((DateTime.Now.Month - 1) % 3)).ToString("yyyy-MM-01")).AddDays(-1).ToShortDateString();
//下季度,相信你们都知道了。。。。收工
DateTime.Now.AddMonths(3 - ((DateTime.Now.Month - 1) % 3)).ToString("yyyy-MM-01");
DateTime.Parse(DateTime.Now.AddMonths(6 - ((DateTime.Now.Month - 1) % 3)).ToString("yyyy-MM-01")).AddDays(-1).ToShortDateString();
//上季度
DateTime.Now.AddMonths(-3 - ((DateTime.Now.Month - 1) % 3)).ToString("yyyy-MM-01");
DateTime.Parse(DateTime.Now.AddMonths(0 - ((DateTime.Now.Month - 1) % 3)).ToString("yyyy-MM-01")).AddDays(-1).ToShortDateString();

---------------------------------------------------------------------

格式化数值:有时,我们可能需要将数值以一定的格式来呈现,就需要对数值进行格式化。我们使用格式字符串指定格式。格式字符串采用以下形式:Axx,其中 A 为格式说明符,指定格式化类型,xx 为精度说明符,控制格式化输出的有效位数或小数位数。

格式说明符
说明
示例
输出
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

 

--------------------------------------------------------------

十六进制(hex)显示 in C# .tostring("X2")

byte     tempbyte=0xaa;

messagebox.show (tempbyte.tostring("X2")); 
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

C# ToString()方法一些特殊用法 的相关文章

  • C# ToString()方法一些特殊用法

    转帖 http hi baidu com crp8 blog item d19ab0cc131b8f1300e92869 html 一 取中文日期显示 1 年月日时分 currentTime ToString 34 f 34 不显示秒 2
  • toString用法

    toString是定义在java lang Object的方法 xff0c 因此所有类都可以使用toString方法 xff0c 但是 toString方法本身返回的是地址信息而对于String Date File 包装类 等都重写了toS
  • toString方法使用

    一 Object类中toString的作用 1 在主方法中我们可以直接用toString 输出对象其中的内容 2 我们需要直接输出对象中所属内容时 xff0c 直接使用toString 方法输出语句 xff0c 输出内容不友好 xff0c
  • Java中的toString()方法

    一 toString 方法介绍 toString 方法是 Object 类中的方法 xff0c toString 方法源代码如下 xff1a 1 getClass getName 返回类的全类名 包名 43 类名 2 Integer toH
  • C#字符串数值前加0将1转化成01

    定义两个数值字符串 string str1 1 string str2 01 在我们的主观感受里这两个在进行数值比较时都是1 应该是等价的 但进行字符比对时则不尽然 转化处理 str1 Convert ToDouble str1 ToStr
  • 从 .NET Framework 4.7.2 移植到 .NET5.0 后如何避免“-0”作为 double.ToString() 结果?

    我正在将 NET Framework 4 7 2 Visual Studio 项目移植到 NET5 0 当值为负且接近于零时 我遇到了 double ToString 的不同行为 例如 双精度值 7 1054273576010019E 15
  • Pandas Dataframe 到带分隔符的字符串

    我想将数据框转换为字符串 这个话题如何将 pandas 数据框行转换为逗号分隔的字符串接近我想要的 此解决方案的唯一问题 我有一列 国家 其中包含带有分隔符的字符串 例如 使用此解决方案 数据框正在转换为字符串 但我将 美国 变为 美国 州
  • JavaScript 按位掩码

    这个问题类似于这另一个问题 但是 我想了解为什么会这样 下面的代码 console log parseInt 0xdeadbeef 16 parseInt 0x000000ff 16 toString 16 console log pars
  • 需要帮助在 Java 中将数字转换为单词

    我正在开发一个将数字转换为单词的程序 但我在使用 Numbers 类中的 toString 方法时遇到问题 所有的方法都给了我 我可以实现 因此 我无法删除其中任何一个 编号 4564 gt 四千五百六十四 这是代码 数字类 package
  • toString 的显式调用与隐式调用

    当需要有关对象的一些调试信息时 我曾经使用 toString 的隐式调用 因为如果对象为 null 它不会抛出异常 例如 System out println obj obj 代替 System out println obj obj to
  • 传递一个整数作为“toString”的参数有什么作用?

    我正在学习 JavaScript 课程 但没有相关指南toString方法 JavaScript 中这两个输出的目的是什么 35 toString 36 gt gt gt z 35 toString 37 gt gt gt 抛出一个Rang
  • 在 Java 中将 NodeList 转换为字符串

    我正在尝试将 NodeList 转换为 String 以便我可以以任何我想要的方式操作它 但我似乎无法在网上找到答案 我尝试将 NodeList 存储在 Node 数组中 但打印出来的所有数据均为空 TextingXPath java im
  • 十进制 ToString 格式,至少给出 1 位数字,没有上限

    如何格式化decimal在 C 中 小数点后至少一位数字 但如果指定小数点后多于 1 位 则没有固定上限 5 gt 5 0 5 1 gt 5 1 5 122 gt 5 122 10 235544545 gt 10 235544545 Use
  • 整数是如何在底层转换为字符串的?

    我想真正的问题是如何将 base2 binary 转换为 base10 最常见的应用可能是创建输出字符串 将二进制数字数据块转换为字符数组 这具体是如何完成的 我猜 鉴于可能没有为每个数值预定义一个字符串 我猜测计算机从右到左遍历整数的每一
  • Arrays.toString(int[]) 的反向(解析输出)[重复]

    这个问题在这里已经有答案了 JDK 或 Jakarta Commons 或其他任何地方 中是否有可以解析 Arrays toString 输出的方法 至少对于整数数组 int i fromString Arrays toString new
  • WPF IsEditable=true 填充对象的 ComboBox 将 ToString() 显示为所选项目

    Wpf 组合框允许编辑 如果所有组合框项目都是字符串 或者在它们上定义了 ToString 方法 那么这很好 当您选择一个项目时 它显示为文本 它不使用 DataTemplate 它只是对所选项目调用 ToString 我在组合下拉列表中得
  • 在 Linq toEntity 中将 int 转换为字符串时出现问题

    var items from c in contacts select new ListItem Value c ContactId Cannot implicitly convert type int ContactId to strin
  • 覆盖 Object.toString 错误

    为什么这会在 Flash Builder 中产生错误 package public class Foo override public function toString String return Foo 制表符补全表明这可用于覆盖 错误
  • 如何打印我的 Java 对象而不得到“SomeType@2f92e0f4”?

    我有一个类定义如下 public class Person private String name constructor and getter setter omitted 我尝试打印我的类的一个实例 System out println
  • 时间:2019-01-09 标签:c#decimaltoString()转换与逗号(,)

    c decimal toString 转换问题 Example 我有一个十进制值 1 当我使用 toString 将十进制转换为字符串时 它返回 0 10 它返回 COMMA 而不是 DOT 我相信这与您的操作系统设置的文化 地区有关 您可

随机推荐

  • sklearn接口报错Input contains NaN, infinity or a value too large for dtype(‘float64‘)

    1 错误场景 某个包调用了sklearn接口 xff0c 在fit x y 时报错Input contains NaN infinity or a value too large for dtype 39 float64 39 2 错误原因
  • 在shell中执行conda activate报错:Your shell has not been properly configured to use ‘conda activate‘.

    今天想要在Mac上执行一段自动启动jupyter的shell脚本 xff0c 但是出现了错误 错误代码 xff1a CommandNotFoundError Your shell has not been properly configur
  • centos7安装CUDA11.2+CUDNN8.1+tensorflow2.4

    环境 xff1a 系统 xff1a centos7 CPU xff1a Intel R Xeon R Gold 5220 CPU 64 2 20GHz 36核 GPU xff1a Tesla V100 4 查看CPU信息 xff1a cat
  • 开源时序建模框架Kats

    KATS简介 时间序列分析建模是数据科学和机器学习的一个重要的领域 xff0c 在电子商务 金融 供应链管理 医学 气象 能源 天文等诸多领域有着广泛的应用 目前时间序列分析以及建模的技术非常多 xff0c 但相对散乱 Facebook开源
  • 包含动画的PPT转为PDF

    目的 xff1a 带动画的PPT转化为PDF xff0c PDF的每一页是动画的一个步骤 方法 xff1a 使用 宏 参考链接 xff1a https www codercto com a 70548 html 具体方法 xff08 win
  • windows中docker编写一个dockerfile文件

    Dockerfile文件描述了当我们启动镜像的时候需要哪些软件元素 除了软件元素之外 xff0c Dockerfile 还能够让我们能够在启动镜像的时候在容器中运行一些命令或者指明我们使用什么样的环境 使用虚拟机中的vim命令编写docke
  • spyder增加模块代码提示功能

    最近在配置tensorflow xff0c 可是发现使用spyder的时候无法加载tensorflow的代码提示 xff0c 需要自己输入完整的函数名称 xff0c 十分不方便 xff0c 于是从网上找了一些资料 xff0c 来解决spyd
  • conda activate报错:gbk相关错误

    使用conda create n 建立新的虚拟环境后 xff0c 使用activate无法进入虚拟环境 xff0c 报了一个和gbk相关的错误 xff0c 后来经排查发现 xff0c 是系统环境变量中包含中文字符 xff0c 把系统变量中所
  • scanf源码分析

    本文分析的是glibc2 31中的scanf相关源码 xff0c 目的不是研究scanf的算法 xff0c 而是说明scanf在IO attack中的利用方法 xff0c 属于CTF的范畴 scanf c 其实就是对 vscanf inte
  • windows建立定时任务执行bat脚本

    在Linux中我们可以通过crontab来定时执行脚本 xff0c 那么windows中如何执行呢 xff1f 为了避免分支冲突 xff0c 准备在每天上班的时候自动将git远程仓库的最新版本pull下来 xff0c 然后在下班时间自动将重
  • 需账号密码登陆的网页爬虫

    对于普通网页的爬取十分简单 xff0c 如果网站没有任何反爬机制 xff0c 只要以下代码就可以实现对于网页的爬取 span class token keyword import span requests html span class
  • sqlserver通过OPENJSON转换 json数据

    OPENJSON 行集函数可将 JSON 文本转换为一组行和列 使用 OPENJSON 将 JSON 集合转换为行集后 xff0c 可以在返回的数据上运行任意 SQL 查询或将其插入到 SQL Server 表中 OPENJSON 函数采用
  • [linux]armbian修改为清华源

    查看系统发行版本 命令lsb release a 本机为基于Debian的armbian buster 所以用清华Debian源 修改apt为清华软件源 备份原文件 sudo cp etc apt sources list etc apt
  • 基础的三角函数,反三角函数,双曲函数的图形绘制(matlab)

    matlab基本图形绘制 基础的三角函数 xff0c 反三角函数 xff0c 双曲函数的图形绘制 xff1b 在此过程 xff0c 可以熟悉基础的matlab指令 xff1b 三角函数 y1 61 sin x y2 61 cos x y3
  • tkinter实现带背景图片的登录窗口

    实现功能 xff1a 打开系统登录窗口 xff0c 输入用户名密码 xff0c 点击登录后跳转到程序主界面 xff0c 用户名密码在程序代码里 xff0c 注意运行时需要自己准备一张背景图片back png 主要代码 xff1a self
  • CCF 201809-3 2018年9月第三题元素选择器(python 100分题解)

    问题描述 试题编号 xff1a 3试题名称 xff1a 元素选择器时间限制 xff1a 10 0s内存限制 xff1a 512 0MB问题描述 xff1a 提交后100分代码 xff1a 注意标签选择器大小写不敏感 xff0c 匹配时都转成
  • GitHub项目徽章的添加和设置

    原文出处 xff1a https lpd ios github io 2017 05 03 GitHub Badge Introduction 许多同学在 GitHub 上发布了自己的开源项目 xff0c 有辛苦开发的实用工具 构思巧妙的开
  • 【C++】买鸡问题练手题

    C 43 43 买鸡问题 公鸡 5 元 1 只 xff0c 母鸡 3 元 1 只 xff0c 小鸡 1 元 3 只 xff0c 花了 100 元钱买 100 只鸡 xff0c 问公鸡 母鸡 小鸡各多少只 xff1f include lt i
  • 关于Vue中的axios数据异步 获取后,更改数据,页面没有更新

    更改axios数据后 xff0c 页面没有更新解决办法 列子解决 列子 span class token comment 页面视图HTML span span class token operator lt span span span c
  • C# ToString()方法一些特殊用法

    转帖 http hi baidu com crp8 blog item d19ab0cc131b8f1300e92869 html 一 取中文日期显示 1 年月日时分 currentTime ToString 34 f 34 不显示秒 2