以特定模式格式化日期字符串
我有一个以这种格式显示日期格式
星期二4月17日6:12:02 2018
我试过这个
class Program
{
static void Main(string[] args)
{
var today = DateTime.Now.AddDays(-1);
var day = today.Day;
var month = today.Month;
var year = today.Year;
Console.WriteLine(today);
Console.WriteLine(day);
Console.WriteLine(month);
Console.WriteLine(year);
var answer = day + "/" + month + "/" + year;
Console.WriteLine(answer);
Console.WriteLine(today);
}
}
我怎样才能得到像星期二,星期三全文的月份和日期,也可以将日期更改为上午和下午...我可以得到int和年份。
这是来自评论中列出的文档。 你基本上以你想要显示的格式添加字符串格式模式。 注意大写和小写格式有区别。
正如SonerGönül所提到的,如果您的目标受众不是基于英语,那么可以考虑将CultureInfo.InvariantCulture
字段添加到toString()
。 这样显示的日期并不与某种文化联系在一起。 请不要忘记包含System.Globalization
。
从文档:
不变的文化数据在一段时间内稳定并且在所安装的文化中保持稳定,并且不能由用户自定义。 这使得不变文化对需要独立于文化的结果的操作特别有用,例如格式化和解析操作,这些操作会持续格式化数据
var today = DateTime.Now.AddDays(-1);
Console.WriteLine(today.ToString("dddd MMMM dd hh:mm:ss tt yyyy", CultureInfo.InvariantCulture));
// Monday April 16 12:11:06 PM 2018 <- My time
这是一个经典的格式问题。
如果您想获取DateTime
文本(又名字符串)表示形式,最常用的方法是使用带可选格式和区域性设置的ToString
方法。
您的目标字符串包含英文的月份和日期名称。 这就是为什么你需要使用像InvariantCulture
这样的基于英语的文化背景。
并将格式放入字符串中,只需遵循自定义日期和时间格式字符串页面上的规则。
var answer = DateTime.Now.AddDays(-1).ToString("dddd MMMM dd h:mm:ss yyyy",
CultureInfo.InvariantCulture);
链接地址: http://www.djcxy.com/p/75119.html
上一篇: Format date string in a specific pattern
下一篇: How do I programm a language independent double.tryparse?