C# 打开Excel文件时出现AccessViolationException异常
我正在使用.NET4.0。我使用OpenFileDialog从Excel工作表中读取数据。第一次OpenFileDialog运行得很好,我得到了文件,但在我关闭它并重新打开它以获得另一个文件后,AccessViolationException显示出来 守则:C# 打开Excel文件时出现AccessViolationException异常,c#,.net,excel,openfiledialog,exceldatareader,C#,.net,Excel,Openfiledialog,Exceldatareader,我正在使用.NET4.0。我使用OpenFileDialog从Excel工作表中读取数据。第一次OpenFileDialog运行得很好,我得到了文件,但在我关闭它并重新打开它以获得另一个文件后,AccessViolationException显示出来 守则: private void excelFileOpenBt_Click(object sender, EventArgs e) { OpenFileDialog openFileDialog1 = new OpenFileDialog(
private void excelFileOpenBt_Click(object sender, EventArgs e)
{
OpenFileDialog openFileDialog1 = new OpenFileDialog();
openFileDialog1.Filter = "Excel Files|*.xls;*.xlsx;*.xlsm";
if (openFileDialog1.ShowDialog() == DialogResult.OK)
{
String filename = openFileDialog1.FileName;
if (filename == String.Empty)
return;
fileNameLb.Text = filename;
FileStream stream = new FileStream(filename, FileMode.Open);
//Reading from a binary Excel file ('97-2003 format; *.xls)
IExcelDataReader excelReader2003 = ExcelReaderFactory.CreateBinaryReader(stream);
DataSet result = excelReader2003.AsDataSet();
String txt = "";
foreach (DataTable table in result.Tables)
{
MessageBox.Show("Table");
for (int i = 0; i < table.Rows.Count; i++)
{
for (int j = 0; j < table.Columns.Count; j++)
txt += "\"" + table.Rows[i].ItemArray[j] + "\";";
txt += "----";
}
}
MessageBox.Show(txt);
excelReader2003.Close();
stream.Close();
}
}
您正在尝试读取或写入受保护的内存块。.NET Framework 4.0版