【发布时间】:2014-12-26 05:41:17
【问题描述】:
我相信这里有很多关于这个问题的讨论。 但我阅读了所有帖子并尝试过,但它从不与 c# 一起使用。 我的目标很简单,因为我有现有的 csv 文件。 只想转换exel文件并完成。 很多人说使用 spire.xls 的东西,但我相信 MS .office.interop.excel 可以处理它。
Converting Excel File From .csv To .xlsx
我阅读了上述问题,这与我的问题相同。 但上面的代码在我的电脑上不起作用..我需要导入其他 dll 才能使用它。 我只是从该站点复制代码。在下面再次复制...
目前我使用 Lib 作为 MS.office.interop.excel 和 MS.office.interop.core
Application app = new Application();
Workbook wb = app.Workbooks.Open(@"C:\testcsv.csv", Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing);
wb.SaveAs(@"C:\testcsv.xlsx", XlFileFormat.xlOpenXMLWorkbook, Type.Missing, Type.Missing, Type.Missing, Type.Missing, XlSaveAsAccessMode.xlExclusive, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing);
wb.Close();
app.Quit();
这里有很多错误。修改代码如下,现在我在参考中仅使用 MS.office.interop.excel 和 MS.office.interop.core。 看起来我需要使用另一个 dll 文件。 无论如何,我确实遵循了该代码并制作了新代码。 它减少了错误,但我不知道这是正确的方法。 以下是我现在尝试的。
Excel.Application xlApp;
Excel.Workbook xlWorkBook;
Excel.Worksheet xlWorkSheet;
object misValue = System.Reflection.Missing.Value;
System.Globalization.CultureInfo oldCI = System.Threading.Thread.CurrentThread.CurrentCulture;
System.Threading.Thread.CurrentThread.CurrentCulture = new System.Globalization.CultureInfo("en-US");
xlApp = new Excel.ApplicationClass();
xlWorkBook = xlApp.Workbooks.Add(misValue);
xlWorkBook = xlApp.Workbooks.Open(@"C:\testcsv.csv", Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing);
xlWorkBook.SaveAs(@"C:\testcsv.xlsx", XlFileFormat.xlOpenXMLWorkbook, Type.Missing, Type.Missing, Type.Missing, Type.Missing, XlSaveAsAccessMode.xlExclusive, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing);
xlWorkBook.Close();
这里是错误信息
Error 3 The name 'XlFileFormat' does not exist in the current 上下文 C:\Users\jochoi\Desktop\joseph_BT_전류_code\DC_Test - ver01\DC_Test\DC.cs 528 54 DC_Test
错误 4 当前不存在名称“XlSaveAsAccessMode” 上下文 C:\Users\jochoi\Desktop\joseph_BT_전류_code\DC_Test - ver01\DC_Test\DC.cs 528 142 DC_Test
错误 4 方法 'Close' 没有重载需要 '0' 参数 C:\Users\jochoi\Desktop\joseph_BT_전류_code\DC_Test - ver01\DC_Test\DC.cs 525 13 DC_Test
我的目标只是获取现有的 csv 文件,然后更改为 excel 文件。 有没有人有其他解决方案,因为那个答案在我的电脑上不起作用。 (c#)
【问题讨论】:
-
请发布您遇到的实际错误
-
是的,我在我的问题中添加了更多细节,还添加了错误消息......
-
您可以使用链接到的问题中的库。或者你可以试试这个问题的答案中使用的方法stackoverflow.com/questions/4781478/convert-csv-into-xls
标签: c# .net excel csv converters