如何转换“;2014-07-23 06:00“;字符串到日期时间,单位为“;yyyy-MM-dd HH.MM.ss.ff
本文关键字:单位 时间 日期 ff MM HH yyyy-MM-dd ss 转换 何转换 2014-07-23 | 更新日期: 2023-09-27 18:29:47
我有一个值为2014-07-23 06:00
的字符串。我需要将此值转换为yyyy-MM-dd-HH.mm.ss.ffffff
格式的DateTime。无需转换为需要在yyyy-MM-dd-HH.mm.ss.ffffff
中显示的字符串
但我的错误越来越少。错误-string was not recognized as a valid datetime
下面是我的代码。谁能帮我修一下这个吗。
using System;
using System.Globalization;
public class Example
{
public static void Main()
{
string format = "yyyy-MM-dd-HH.mm.ss.ffffff" ;
DateTime result;
const String Date = "2014-07-23 06:00"; ;
try
{
result = DateTime.ParseExact(Date, format,
CultureInfo.InvariantCulture);
Console.WriteLine("{0} converts to {1}.", format, result.ToString());
}
catch (FormatException)
{
Console.WriteLine("{0} is not in the correct format.", format);
}
}
}
您需要使用其存在的格式对其进行解析,然后使用目标格式调用ToString
。此外,您不想使用try-catch
,尤其是当有TryX
方法可用时:
var input = "2014-07-23 06:00";
var inputFormat = "yyyy-MM-dd HH:mm";
var outputFormat = "yyyy-MM-dd-HH.mm.ss.ffffff";
DateTime dateTime;
if (DateTime.TryParseExact(
input,
inputFormat,
null,
System.Globalization.DateTimeStyles.None,
out dateTime))
{
Console.Write(
"{0} converts to {1}",
inputFormat,
dateTime.ToString(outputFormat));
}
else
{
Console.Write("{0} is not the correct format", inputFormat);
}
试试这个:
string format = "yyyy-MM-dd-HH.mm.ss.ffffff";
DateTime result;
const String Date = "2014-07-23 06:00"; ;
try
{
DateTime datDateStarted;
DateTime.TryParseExact(Date, new string[] { "yyyy-MM-dd HH:ss" }, System.Globalization.CultureInfo.InvariantCulture, System.Globalization.DateTimeStyles.None, out datDateStarted);
Console.WriteLine(datDateStarted);
}
catch (FormatException)
{
Console.WriteLine("{0} is not in the correct format.", format);
}
VB.NET代码:
Dim format As String = "yyyy-MM-dd-HH.mm.ss.ffffff"
Dim resultString As String = String.Empty
Dim inputString As String = "2014-07-23 06:00"
resultString = DateTime.ParseExact(inputString, "yyyy-MM-dd HH:mm", System.Globalization.CultureInfo.InvariantCulture).ToString(format)
看看这个答案,我想你可以使用这行代码:
DateTime myDate = DateTime.ParseExact("2009-05-08 14:40:52,531", "yyyy-MM-dd HH:mm:ss,fff",
System.Globalization.CultureInfo.InvariantCulture)