XLS(古いExcelファイル)にデータを保存する機能をアプリケーションに追加したいと思います。
ここでASP.NETでこれを行う方法の例を見てきましたが、これがデスクトップアプリケーションのc#コードにどのように変換されるのかわかりません。
また、次のようなExcelの自動化も確認しました。
private void button1_Click(object sender, EventArgs e)
{
Excel.Application xlApp ;
Excel.Workbook xlWorkBook ;
Excel.Worksheet xlWorkSheet ;
object misValue = System.Reflection.Missing.Value;
xlApp = new Excel.ApplicationClass();
xlWorkBook = xlApp.Workbooks.Add(misValue);
xlWorkSheet = (Excel.Worksheet)xlWorkBook.Worksheets.get_Item(1);
xlWorkSheet.Cells[1, 1] = "http://csharp.net-informations.com";
xlWorkBook.SaveAs("csharp-Excel.xls", Excel.XlFileFormat.xlWorkbookNormal, misValue, misValue, misValue, misValue, Excel.XlSaveAsAccessMode.xlExclusive, misValue, misValue, misValue, misValue, misValue);
xlWorkBook.Close(true, misValue, misValue);
xlApp.Quit();
releaseObject(xlWorkSheet);
releaseObject(xlWorkBook);
releaseObject(xlApp);
MessageBox.Show("Excel file created , you can find the file c:\\csharp-Excel.xls");
}
private void releaseObject(object obj)
{
try
{
System.Runtime.InteropServices.Marshal.ReleaseComObject(obj);
obj = null;
}
catch (Exception ex)
{
obj = null;
MessageBox.Show("Exception Occured while releasing object " + ex.ToString());
}
finally
{
GC.Collect();
}
}
そして、私はそれを使いたくありません:
大量のデータをエクスポートすると、非常に遅くなります
可能であれば、MicrosoftExcelがインストールされていないPCでこれを機能させたい
また、 CarlosAg.Excel.Xmlを試しましたが、ファイルを開いているときに、ファイルがXLS形式ではなく、他の形式であるというExcelからの警告が表示されることを除いて、機能しているようです。
誰かが私にこれを行う無料のc#ライブラリを勧めたり、従来の.Netライブラリを使用してデータをXLSに保存する方法を教えてもらえますか?