我想转换一个c#日期时间到“YYYYMMDDHHMMSS”格式。但我没有找到一个内置的方法来获得这种格式?任何评论?
当前回答
你只需要在月(MM)和分钟(MM)之间小心:
DateTime dt = DateTime.Now; // Or whatever
string s = dt.ToString("yyyyMMddHHmmss");
(还要注意,HH是24小时时钟,而HH是12小时时钟,通常与t或tt一起作为am/pm指示符。)
如果你想把它作为复合格式字符串的一部分,你可以使用:
string s = string.Format("The date/time is: {0:yyyyMMddHHmmss}", dt);
有关详细信息,请参阅MSDN页面自定义日期和时间格式。
其他回答
我很惊讶没人知道这是怎么回事。 任何格式都可以使用下面的指导原则创建:
自定义日期和时间格式字符串
对于你的具体例子(正如其他人所指出的那样),使用类似于
my_format="yyyyMMddHHmmss";
DateTime.Now.ToString(my_format);
其中my_format可以是y,M,H, M, s,f, f和更多的字符串组合! 请查看链接。
实际上,您已经自己编写了格式。
你的日期。ToString(“yyyyMMddHHmmss”)
MM =两位数月 Mm =两位数的分钟 HH =两位数小时,24小时钟 Hh =两位数小时,12小时钟
其他一切都应该不言自明。
这没什么大不了的。你可以这样简单地写
WriteLine($"{DateTime.Now.ToString("yyyy-MM-dd-HH:mm:ss")}");
这里我用了$,这是字符串插值。
以上任何一个答案都不能解决你的问题的可能性很小。尽管如此,我还是分享了我的方法,它总是适用于不同格式的约会时间。
//Definition
public static DateTime ConvertPlainStringToDatetime(string Date, string inputFormat, string outputFormat)
{
DateTime date;
CultureInfo enUS = new CultureInfo("en-US");
DateTime.TryParseExact(Date, inputFormat, enUS,
DateTimeStyles.AdjustToUniversal, out date);
string formatedDateTime = date.ToString(outputFormat);
return Convert.ToDateTime(formatedDateTime);
}
//Calling
string oFormat = "yyyy-MM-dd HH:mm:ss";
DateTime requiredDT = ConvertPlainStringToDatetime("20190205","yyyyMMddHHmmss", oFormat );
DateTime requiredDT = ConvertPlainStringToDatetime("20190508-12:46:42","yyyyMMdd-HH:mm:ss", oFormat);
使用c# 6.0
$"Date-{DateTime.Now:yyyyMMddHHmmss}"
推荐文章
- 如何格式化Joda-Time DateTime仅为mm/dd/yyyy?
- 防止在ASP中缓存。NET MVC中使用属性的特定操作
- 转换为值类型'Int32'失败,因为物化值为空
- c#中有任何连接字符串解析器吗?
- 如何将python datetime转换为字符串,具有可读格式的日期?
- 在Linq中转换int到字符串到实体的问题
- 是否可以动态编译和执行c#代码片段?
- 创建自定义MSBuild任务时,如何从c#代码获取当前项目目录?
- c#和Java的主要区别是什么?
- 在c#中创建一个特定时区的DateTime
- .NET中的属性是什么?
- csproj文件中的“Service Include”是干什么用的?
- 如何使用try catch进行异常处理是最佳实践
- 替换字符串中第一次出现的模式
- .NET中字节的字面后缀?