我想創建並連續寫入Excel文件。我必須在下面編寫代碼,但我想要添加所有我持續獲得的數據。如何連續寫入excel文件?
CODE:
Excel.Application xlApp ;
Excel.Workbook xlWorkBook ;
Excel.Worksheet xlWorkSheet ;
object misValue = System.Reflection.Missing.Value;
xlApp = new Excel.Application();
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();
}
}
在這段代碼,當啓動應用程序,它總是說,你想取代它,它始終關閉應用程序時,程序獲取的數據。
這是我想要的功能:我想像這裏一樣附加文件。
StreamWriter fileWriter = new StreamWriter("test.txt", true);
fileWriter.WriteLine(jointHead.Position.X);
fileWriter.Close();
什麼可以解決這類問題? 謝謝...
我會考慮寫一個文本文件,是在如CSV與Excel兼容的格式,並不斷追加到這一點。你可能會發現它更快更簡單。 – 2012-02-14 14:05:59
順便說一句 - 我知道你的MessageBox.Show(「例外...」)是prolly出於調試目的。請確保不要在最終的應用程序中保留這些位置,而應考慮附加「重要性」枚舉的某種日誌記錄功能。除此之外,我會試圖問爲什麼Excel文件正在使用而不是其他可擴展存儲介質。畢竟,你可以查詢一個數據庫,並根據需要提供一個帶有內容的excel文件。添加爲答案以及 – 2012-02-14 14:23:23
因爲,我有60列和大約400行數據...這就是爲什麼我想使用Excel。我不想創建表,行和列...首先,我試圖只是txt文件。它完美地追加它。但是,如果你有太多的數據,它看起來很混亂。他們之間很難選擇一些數據。這就是爲什麼我想使用excel.It已經有列和行。我並不需要創建表格。你有這個目的的解決方案嗎? – Samet 2012-02-14 14:31:35