【发布时间】:2014-02-23 09:57:13
【问题描述】:
我对 excel 有很奇怪的问题。我有两个文件,每个文件只有一列是日期,使用 c# 互操作库我打开每个文件并保存为 csv。如果我打开每个 excel ,则时间格式为 dd/MM/YYYY 但现在发生了什么,保存到 csv 后,一个 excel 具有相同的时间格式,即 dd/MM/YYYY 但另一个具有 MM/dd/YYYY ,如何这可能吗 ?
这是保存为 csv 的代码:
var application = new Application();
var workbooks = application.Workbooks;
var workbook = workbooks.Open(file);
application.DisplayAlerts = false;
var tempFile = file.Substring(0, file.Length - 4) + ".csv";
if (File.Exists(tempFile))
Directory.Delete(tempFile);
workbook.SaveAs(tempFile, XlFileFormat.xlCSVWindows);
Extensions.DisposeExcel(workbook, application, workbooks, null, null);
我没有在应用程序中设置任何本地化。也许值得一提的是,一个 excel 具有 xlsx 扩展,而另一个(whis 与月翻转日)使用 xls 时要旧得多。
还有一件事,我注意到当我使用 excel save as 将这些 excel 保存为 csv 时,一切都很好。
【问题讨论】:
-
您计算机中的区域日期设置是什么? excel 可能会混淆月份与日期。
-
BE-be ,但正如我所说,有两个 excel,一个还可以,另一个在保存到 csv 后将日期与月份反转。
-
请指定哪个 excel 文件可以正常工作。 xlsx 还是 xls?
-
@PilgerstorferFranz 请再次阅读我的问题,一切都在那里。
-
@PortlandRunner 抱歉,已修复。