先日、ClosedXML で作った Excel ファイルが DioDocs で扱えない というタイトルの記事を書きました。
この組み合わせの環境で試すたびに、変換するのも面倒なので変換するライブラリを作りました。
大分雑な処理をしていますが、とりあえず試すのには使えています。
□ ファイルを介する場合
const string filename = @"out\from.xlsx"; const string outfilename = @"out\to.xlsx"; { var book = new XLWorkbook(); var sheet = book.AddWorksheet("New Sheet"); book.SaveAs(filename); } RKSoftware.ExCXToDDHelper.CXToDDConverter.Convert(filename); { var book = new Workbook(); book.Open(filename); book.Save(outfilename); }
□ Stream を介する場合
const string outfilename = @"out\to.xlsx"; using (var stream = new MemoryStream()) { { var book = new XLWorkbook(); var sheet = book.AddWorksheet("New Sheet"); book.SaveAs(stream); } RKSoftware.ExCXToDDHelper.CXToDDConverter.Convert(stream); { var book = new Workbook(); book.Open(stream); book.Save(outfilename); } }
とりあえず試すには使えています。