我使用Microsoft.Office.Interop.Excel从文本文件创建excel文件; 这是我的代码
private void button1_Click(object sender, EventArgs e)
{
// Reading the text file - StreamReader include System.IO namespace
StreamReader objReader = new StreamReader(@"C:\Users\pci218\Desktop\TextToExcelFormApplication\TextToExcelFormApplication\Text\pop3.txt");// Please give the file path
string sLine = "";
ArrayList arrText = new ArrayList();// Include System.Collections.Generic namespace
while (sLine != null)
{
sLine = objReader.ReadLine();
if (sLine != null)
arrText.Add(sLine);
}
callExcel(arrText, true);
}
private void callExcel(ArrayList arrText, bool value)
{
try
{
// Change Your String here
String textString = null;
foreach (var item in arrText)
{
textString = textString + item + Environment.NewLine;
}
Clipboard.SetText(textString);
Microsoft.Office.Interop.Excel.Application xlexcel;
Microsoft.Office.Interop.Excel.Workbook xlWorkBook;
Microsoft.Office.Interop.Excel.Worksheet xlWorkSheet;
object misValue = System.Reflection.Missing.Value;
xlexcel = new Excel.Application();
// for excel visibility
//xlexcel.Visible = true;
// Creating a new workbook
xlWorkBook = xlexcel.Workbooks.Add(misValue);
// Putting Sheet 1 as the sheet you want to put the data within
xlWorkSheet = (Excel.Worksheet)xlWorkBook.Worksheets.get_Item(1);
// creating the range
Excel.Range CR = (Excel.Range)xlWorkSheet.Cells[1, 1];
CR.Select();
xlWorkSheet.Paste(CR, false);
if (value == true)
{
try
{
// saving the file as .xls
xlWorkSheet.SaveAs(@"C:\Users\U0153056\Desktop\receivedNew.xls");
}
catch (Exception)
{
MessageBox.Show("File already exist");
}
}
else
{
try
{
// saving the file as .xlsx
xlWorkSheet.SaveAs(@"C:\Users\U0153056\Desktop\receivedNew.xlsx");
}
catch (Exception)
{
MessageBox.Show("File already exist");
}
}
xlexcel.Quit();
}
catch (Exception ex)
{
MessageBox.Show(ex.ToString());
}
}
但我得到了“使用CLSID检索组件的COM类工厂” 错误。我没有在我的电脑上安装微软办公室。问题是什么?由于m得到这个错误?任何人都有想法.pls帮助。
答案 0 :(得分:0)
很遗憾,您无法在未安装Microsoft Office Excel 2007或更高版本的情况下使用 Microsoft.Office.Interop.Excel
。
...您必须拥有Microsoft Office Excel 2007和Microsoft Office 您的计算机上安装了Word 2007或更高版本。
检查 this 链接以获取更多信息。