这两天在搞一个Office插件,需要Excel的xml格式,在网上查看了各种方法,第一种是使用使用Spire.XLS for .NET转换,这个很方便,但是免费版有限制,没一个文档没办法转换太多;还有一种方法是使用Apose.Cell,这个虽然也能转换,但转换出来有点简陋;还有一种方法是直接写一个转换的程序,但太麻烦了,行是能行,但是懒也没必要。。。。
最后试了好长时间,发现只需要调用VSTO里的SaveAs()就行。。。。。
using Excel = Microsoft.Office.Interop.Excel;
namespace ExcelVSTOExample
{
class Program
{
static void Main(string[] args)
{
Excel.Application excelApp = new Excel.Application();
string filePath = "path_to_excel.xlsx";
Excel.Workbook workbook = excelApp.Workbooks.Open(filePath);
workbook.SaveAs("path_to_result.xml", Excel.XlFileFormat.xlXMLSpreadsheet, AccessMode: Excel.XlSaveAsAccessMode.xlNoChange);
workbook.Close(false);
excelApp.Quit();
}
}
}