2011-02-17 99 views

回答

-1

您可以使用Visual Studio Tools for Office或ADO.NET来执行此操作。
为了更好的兼容性,我建议你使用第二个:看看一些教程,如David Hayden's,学习如何使用它。

要创建CSV文件,您只需读取Excel数据并使用Wikipedia中写入的结构将结果写入文件。

1

检查出This c# code,看看是否会这样做。

+0

此方法,如使用数据源Microsoft.Jet.OLEDB.4提供商很可能只在x86机器上工作,以Excel文件的连接。 – 2011-02-17 21:23:14

+3

不鼓励仅链接回答。这应该是一个评论。 – 2014-06-17 20:32:31

8

如果你愿意使用Excel互操作:

 Excel.Application app = new Excel.Application(); 
     Excel.Workbook wb = app.Workbooks.Open(@"c:\temp\testtable.xlsx"); 
     wb.SaveAs(@"C:\Temp\output.csv", Excel.XlFileFormat.xlCSVWindows); 
     wb.Close(false); 
     app.Quit(); 
     Console.WriteLine("Done!"); 
+0

错误:方法'SaveAs'没有超载需要'2'参数 – ardmore 2011-02-17 21:32:36

2
using System; 
using System.Collections.Generic; 
using System.Linq; 
using System.Text; 
using Microsoft.Office.Interop.Excel; 
using System.IO; 

namespace TestConsoleApp 
{ 
    class Program 
    { 
     static void Main(string[] args) 
     { 
      String fromFile = @"C:\ExlTest\Test.xlsx"; 
      String toFile = @"C:\ExlTest\csv\Test.csv"; 

      Microsoft.Office.Interop.Excel.Application app = new Microsoft.Office.Interop.Excel.Application(); 
      Microsoft.Office.Interop.Excel.Workbook wb = app.Workbooks.Open(fromFile, 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); 

      // this does not throw exception if file doesnt exist 
      File.Delete(toFile); 

      wb.SaveAs(toFile, Microsoft.Office.Interop.Excel.XlFileFormat.xlCSVWindows, Type.Missing, Type.Missing, false, false, Microsoft.Office.Interop.Excel.XlSaveAsAccessMode.xlExclusive, Microsoft.Office.Interop.Excel.XlSaveConflictResolution.xlLocalSessionChanges, false, Type.Missing, Type.Missing, Type.Missing); 

      wb.Close(false,Type.Missing,Type.Missing); 

      app.Quit(); 
     } 
    } 
} 
相关问题