![](/img/trans.png)
[英]Trying to convert string format (dd-mm-yyyy hh:mm:ss) in (yyyy-mm-dd hh:mm:ss) date format
[英]How to convert “2014-07-23 06:00” string to date time in “yyyy-MM-dd-HH.mm.ss.ffffff” format
我有值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)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.