【发布时间】:2013-04-15 05:49:07
【问题描述】:
无法在 c# 中打开 excel 文件,因为您尝试打开的文件格式与指定的文件扩展名不同。在打开文件之前验证文件没有损坏并且来自受信任的来源。您现在要打开文件吗?
private void button1_Click(object sender, EventArgs e)
{
string fileName = Directory.GetCurrentDirectory();
fileName += "\\" + textBox1.Text + ".xls";
var connectionString = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" + fileName + ";Extended Properties=\"Excel 12.0;IMEX=1;HDR=NO;TypeGuessRows=0;ImportMixedTypes=Text\"";
var conn = new OleDbConnection(connectionString);
conn.Open();
var sheets = conn.GetOleDbSchemaTable(System.Data.OleDb.OleDbSchemaGuid.Tables, new object[] { null, null, null, "TABLE" });
var cmd = conn.CreateCommand();
/////////////////////// sheet 1
cmd.CommandText = "SELECT * FROM [" + sheets.Rows[0]["TABLE_NAME"].ToString() + "] ";
var adapter = new OleDbDataAdapter(cmd);
var ds = new DataSet();
adapter.Fill(ds);
DataTable dt = new DataTable();
dt = ds.Tables[0];
}
【问题讨论】:
-
显示您的代码并告诉人们您到目前为止尝试过什么.. 另请阅读FAQ 和How to Ask
-
你看过这个:stackoverflow.com/questions/652377/… 吗?