我有一个小型的c#windows表单应用程序,它使用来自其他应用程序的Web服务并提交记录。
此Web服务需要使用以下格式接收日期时间值:
const
"2016-10-10T23:00:00-03:00"
是GMT(阿根廷)的地方
我有2个日期时间选择器,我选择日期和时间,然后我将信息连接到具有所需格式的字符串中。
所以我需要以Date格式将此值发送到WebService。 然后我尝试了以下内容:
-03:00
这里的问题是String sFinalDate ="2016-10-10T23:00:00-03:00";
Date dFinalDate= new DateTime();
dFinalDate=Covert.ToDateTime(sFinalDate);
保存以下格式:
dFinalDate
如何将我的字符串转换为具有我需要的格式的日期字段?
谢谢!
答案 0 :(得分:0)
你描述了Round-trip Format Specifier
的一种卑鄙形式。
标准用法的示例如下所示:
// this emits a string that looks like: 2016-06-13T15:30:55.2216814-04:00
var dt = DateTime.Now.ToString("o"); // <-- round-trip format
您的要求是没有毫秒的格式,因此您需要使用这样的自定义格式说明符:
// this gives you a date string that looks like: 2016-06-13T15:30:55-04:00
var dt = DateTime.Now.ToString("yyyy'-'MM'-'dd'T'HH':'mm':'ssK");
有关往返格式的更多信息:https://msdn.microsoft.com/en-us/library/az4se3k1(v=vs.110).aspx#Roundtrip