private DataTable getTable(string fileName)
{
try
{
//判断文件是否存在
if (!File.Exists(fileName)) { Response.Write("<script>alert('文件不存在,请重新上传。');</script>"); return null; }
DataSet ds = new DataSet();
OleDbConnection objConn = new OleDbConnection(@"Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" + fileName + ";" + "Extended Properties='Excel 8.0;IMEX=1'"); //Excel 8.0;HDR=NO;IMEX=1中的IMEX=0;
objConn.Open();
DataTable schemaTable = objConn.GetOleDbSchemaTable(System.Data.OleDb.OleDbSchemaGuid.Tables, null); string tableName = schemaTable.Rows[0][2].ToString().Trim();//获取 Excel 的表名,默认值是sheet1 //string queryField = "型号,品牌,封装,年份,包装,数量,单价,订货周期,备注";
//string strSql = "select " + queryField + " from [" + tableName + "]"; string strSql = "select * from [" + tableName + "]";
//string strSql = "select * from [" + tableName + "]"; OleDbCommand objCmd = new OleDbCommand(strSql, objConn);
OleDbDataAdapter myData = new OleDbDataAdapter(strSql, objConn);
myData.Fill(ds, tableName);//填充数据
return ds.Tables[0];
}
catch (Exception ex)
{
//获取文件名
string fName = fileName.Substring(fileName.LastIndexOf("\\") + 1);
//MessageBox.Show(ex.Message);
return null;
}
}
这是我读取excel的文件。本地IDE测试没问题。但在本地IIS就不行。这代码有问题吗。
解决方案 »
- XmlDataSource使用Data属性动态绑定xml数据时,缓存不会自动失效的问题
- asp.net ajax 之gridview updating 问题!在线等!
- 新手,关于DataGrid控件。
- asp.net2.0中类的调用问题
- url传值的格式问题
- 页面中有一组单选按钮,怎样VB代码选择其中的一个?
- 水晶报表问题,打印时报索引超出数组界限!解决呢立即给分
- asp程序下的asp.net程序运行问题
- asp.net中的小问题:
- 如何好像csdn这样呢?
- office在线办公。需要用bat将ActiveX控件dsoframer.ocx写入注册表,的一些问题。
- 新建网站项目时如何选择项目类型?
Microsoft.Jet.OLEDB.4.0;
我现在是vs2010测试可以。但部署到本地iis自己的电脑。通过iis访问就不行。我的是win7 64位电脑 iis版本为6.1 改了还是不行。
没明白你是怎么读取的Excel文件,我们项目使用的是 Spread 电子表格,兼容性比较好。你是自己写代码读取吗?
没明白你是怎么读取的Excel文件,我们项目使用的是 Spread 电子表格,兼容性比较好。你是自己写代码读取吗?
我解决了。谢谢大家。http://www.cnblogs.com/nsky/p/3494375.html