我试图从欧洲的日期格式更改为美国(YYYY-MM-DD HH:MM:SS),所以据我所知这应该工作:欧洲和美国之间的转换与+0000日期上月底
var dateString = array[4];
var date = DateTime.ParseExact(dateString, "dd/MMM/yyyy:HH:mm:ss", CultureInfo.InvariantCulture);
var newDateString = date.ToString("yyyy-MM-dd HH:mm:ss");
//inserting the new date and time into the array
array[4] = newDateString;
输入:14/Dec/2014:15:25:34
但是,如果我看到新的文件输出的格式如下:
14/12/2014 15:25:34
编辑::从这一行我的代码来的错误:
writer.WriteLine(string.Join(",", array.Where(s => !string.IsNullOrEmpty(s))))
当更改为'string.Join(“,”...“格式正确。
调试器使用您的本地文化首选项将DateTime变量转换为字符串。你知道它确实工作正常,14不是有效的月份。你没有真正的问题。 –
@HansPassant它不能正常工作..正常工作会给我一个格式为'yyyy-MM-dd HH:mm:ss'的日期输出?或者我错过了什么..? – johnfish92
你的代码工作得很好。调试它,并在'newDateString'中获得'2014-12-14 15:25:34'。所以问题一定是,如果我明白你在做什么,什么时候你把它写在一个新文件中 – Pikoh