我想打开一个excel文件,并将其另存为csv文件。谷歌搜索不走运。我需要用C语言编写这样的代码。
谢谢你的帮助。
发布于 2011-02-18 05:24:29
如果您愿意使用Excel Interop:
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!");发布于 2014-06-18 04:27:07
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();
}
}
}发布于 2011-02-18 05:18:42
您可以使用Visual Studio Tools for Office或ADO.NET来完成此操作。
为了获得更多的兼容性,我建议你使用第二个:看看一些教程,比如David Hayden's one,以了解如何使用它。
要创建CSV文件,您只需读取Excel数据,并使用用Wikipedia编写的结构将结果写入文件。
https://stackoverflow.com/questions/5034717
复制相似问题