2016-07-10 26 views
0

首先,我不是C#。 我正在读取由OPC服务器导出的.csv文件,我必须以更易读的格式导出数据。C#中的OPC时间戳的日期时间转换

文件看起来像如下:

*Type,Value,Time Stamp,Refresh Time,Quality 
03,294,2016-04-19T10:57:52.003+03:00,10000,192 
03,294,2016-04-19T10:58:02.003+03:00,10000,192 
03,294,2016-04-19T10:58:12.003+03:00,10000,192* 

我阅读使用FileHelpers库csv文件,我要仅导出值和时间戳。 问题是我很难将时间戳格式化为更具可读性的日期时间格式。我想以下列格式提供: DD/MM/YY hh:mm 19/04/2016 10:57

我该如何摆脱秒和.003 + 03? 感谢

回答

0

您这里有很多选择,

选项1:读为datetime和出口再次使用的ToString

var newDate = DateTime.Parse("INPUT COLUMN").ToString("dd/MM/yy hh:mm"); 

选项2:解析为字符串,并摆脱它

var newDate = new Regex(@"\d+\.[^,]+").Replace("WHOLE ROW HERE",""); 
+0

使用第一个选项: var newDate = DateTime.Parse(record.TimeStamp).ToString(“DD/MM/YY hh:mm”); Console.Write(newDate +“”); 我得到控制台以下结果: DD04/YY 10:57 DD/04/YY 10:58 DD/04/YY 10:58 所以一个月正常,但年份和日期都没有。 – Leon

+0

@Leon对不起,我的坏,请检查编辑的答案,案件是错误的,它应该是dd/MM/yy – MoustafaS

+0

我编辑邮件 – Leon

0

从字面上看,这样的:

DateTime.Now.ToString("dd/MM/yyy hh:mm") // or any DateTime.