C# 将日期转换成中文格式
没有什么难点,只是要小心,要考虑到月、日上 10 的说法,比如:10 不能直接转换成一〇,也不能像上 20 那样转换成一十〇,应该是十。
特点总结:
- 数字为 10 时,结果为十;
- 数字大于 10 时,十位数字的中文加上“十”。
- 数字能被 10 整除时,个位数不报。
根据以上条件可以扩展到百位、千位等,但还会更麻烦,就是中间有多个连续的 0 的时候,应该只报一个零(非日期时一般没用“〇”,而用“零”)。
考虑日期的特点,为了简化编程,我们将 0-31 这几个数字的中文直接存到数组中。
namespace Cftea
{
public class DateTimeHelper
{
public static string ToChinese(DateTime dt)
{
string yyyyMMdd = dt.ToString("yyyyMMdd");
return GetChineseNumber(Convert.ToInt32(yyyyMMdd.Substring(0, 1))) +
GetChineseNumber(Convert.ToInt32(yyyyMMdd.Substring(1, 1))) +
GetChineseNumber(Convert.ToInt32(yyyyMMdd.Substring(2, 1))) +
GetChineseNumber(Convert.ToInt32(yyyyMMdd.Substring(3, 1))) +
"年" +
GetChineseNumber(Convert.ToInt32(yyyyMMdd.Substring(4, 2))) +
"月" +
GetChineseNumber(Convert.ToInt32(yyyyMMdd.Substring(6, 2))) +
"日";
}
private static string GetChineseNumber(int m)
{
string[] cns = new string[] {
"〇", "一", "二", "三", "四", "五", "六", "七", "八", "九",
"十", "十一", "十二", "十三", "十四", "十五", "十六", "十七", "十八", "十九",
"二十", "二十一", "二十二", "二十三", "二十四", "二十五", "二十六", "二十七", "二十八", "二十九",
"三十", "三十一"
};
return cns[m];
}
}
}
C# 将日期转换成中文格式的更多相关文章
- timestamp 正常日期转换成时间戳格式
select cast(sysdate as timestamp) "DATE" from dual select to_timestamp(to_date(sysdate, 'y ...
- SqlServer把日期转换成不同格式的字符串的函数大全
SQL语句 结果SELECT CONVERT(varchar(100), GETDATE(), 0)-- 05 03 20 ...
- jquery将日期转换成指定格式的字符串
引用jquery文件,如<script type="text/javascript" src="jquery-1.8.3.min.js"></ ...
- excel转换日期格式,将yyyymmdd类型日期转换成yyyy-mm-dd等日期类型方法
源数据日期格式:例如: 20160420 20160422 目标日期格式类型: 2016-4-20 2016-4-22 或 2016/04/20 2016/04/22 方法: 一.选中相应数据的单元格 ...
- 分别用Excel和python进行日期格式转换成时间戳格式
最近在处理一份驾驶行为方面的数据,其中要用到时间戳,因此就在此与大家一同分享学习一下. 1.什么是时间戳? 时间戳是指格林威治时间1970年01月01日00时00分00秒(北京时间1970年01月01 ...
- javascript时间戳转换成指定格式的日期
//时间戳转换成指定格式的日期DateTool.IntDatetimeTo = function(time, format){ var testDate = new Date(time); ...
- 在eclipse中安装properties插件PropertiesEditor及设置(附图),ASCII码转换成中文
在eclipse中安装properties插件PropertiesEditor及设置(附图),ASCII码转换成中文安装成功后ASCII还是不能转换成中文的,原因是设置里面没有把编码设置为utf8的, ...
- 将文本(lrc,txt)文件转换成UTF-8格式
UTF-8是UNICODE的一种变长字符编码又称万国码,由Ken Thompson于1992年创建.现在已经标准化为RFC 3629.UTF-8用1到6个字节编码UNICODE字符.用在网页上可以同一 ...
- dos2unix命令 – 将DOS格式的文本文件转换成UNIX格式
今天做题的时候,出现了个很冷门的: 查找子目录src下所有后缀为.txt的文件执行dos2unix命令,把文件从Dos格式转换为Linux格式,正确的命令是:find src "*.txt& ...
随机推荐
- opencv官网
http://wiki.opencv.org.cn/index.php/Template:Doc
- Android-----使用Button特效 selector+shape
当然除了使用drawable这样的图片外今天谈下自定义图形shape的方法,对于Button控件Android上支持以下几种属性shape.gradient.stroke.corners等. 我们就以 ...
- TP复习5
## ThinkPHP 3.1.2 查询方式#讲师:赵桐正微博:http://weibo.com/zhaotongzheng 本节课大纲:一.普通查询方式 a.字符串 $arr=$m->wher ...
- crm2011创建货币Money类型的字段
using System; using Microsoft.Xrm.Sdk; using Microsoft.Xrm.Sdk.Messages; using Microsoft ...
- javascript 基本数据类型
1. javascript 五种基本数据类型 Undefined Boolean Number String Null,Undefined 对应的值只有一个 undefined, Boolean 对 ...
- 学习笔记之高质量C++/C编程指南
高质量C++/C编程指南 http://man.lupaworld.com/content/develop/c&c++/c/c.htm 高质量C++/C编程指南(附录 C :C++/C 试题的 ...
- C++ Qt 访问权限总结
总结:C++的访问修饰符的作用是以类为单位,而不是以对象为单位. 通俗的讲,同类的对象间可以“互相访问”对方的数据成员,只不过访问途径不是直接访问. 步骤是:通过一个对象调用其public成员函数,此 ...
- Android自定义窗口动画
第一步,设置出现和消失的xml 1.在res/anim下创建enter_anim.xml,设置窗口出现的动画 <?xml version="1.0" encoding=&qu ...
- JSONP 跨域解决办法
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding= ...
- Solr高亮显示highlight的三种实现
高亮显示在搜索中使用的比较多,比较常用的有三种使用方式,如果要对某field做高亮显示,必须对该field设置stored=true 第一种是普通的高亮显示Highlighter,根据查询的 ...