操作Excel可以试试NPOI,我一直觉得不错
是的,我原意是要用上面的方法的,但是没做出来
就改用NPOI了,做出来了,但是我想知道上面的方法错在哪而已。
@失落の熊熊: select *from [Sheet1$]这个是不是掉了空格
public DataSet ExecleDs(string filenameurl, string table)
{
SqlConnection con = new SqlConnection();
con.ConnectionString = "server='CWJMXT-14\\SQLEXPRESS';database='E-learning';uid='sa';pwd='xxx'";
string strConn = "Provider=Microsoft.Jet.OleDb.4.0;" + "data source=" + filenameurl + ";Extended Properties='Excel 8.0; HDR=YES; IMEX=1'";
string strcom = "select *from [Sheet1$]";
OleDbConnection conn = new OleDbConnection(strConn);
conn.Open();
DataSet ds = new DataSet();
OleDbDataAdapter odda = new OleDbDataAdapter(strcom, conn);
odda.Fill(ds, table);
return ds;
} 得到dataset 是不是你的引擎不對,根本就没有取到excel
我知道有这种方法,但是我在这里再写个数据库连接在去查数据太不合理了。
我想用上面的方法实现。
“引擎不对”是什么意思,我调试的时候是取到EXCEL了,文件路径都是对的。
@失落の熊熊:
我贴多了,上面的那个SqlConnection con 没有用。拿掉。
这个没有连接数据库,只是读取到excel了放在了内存中。你再可以用dataview 和datatable 来处理这个excel。
dataview 的查询和过滤功能可以代替一般的select语句了。