请问网上下载的电子表格密码忘了怎么办数据读不出怎么办...

问题如标题:先上代码
String path = Server.MapPath(&~/UploadExcel/&);
string FileName = path + DateTime.Now.ToString(&yyyyMMddHHmmss&) + fuload.FileN
fuload.PostedFile.SaveAs(FileName);
string connstr2003 = &Provider=Microsoft.Jet.OLEDB.4.0;Data Source=& + FileName + &;Extended
Properties='Excel 8.0;HDR=YIMEX=1;'&;
string connstr2007 = &Provider=Microsoft.ACE.OLEDB.12.0;Data Source=& + FileName + &;Extended Properties=\&Excel 12.0;HDR=YES\&&;
if (fileExtenSion.ToLower() == &.xls&)
conn = new OleDbConnection(connstr2003);
conn = new OleDbConnection(connstr2007);
conn.Open();
经过跟踪,发现执行到 & conn.Open()时就挂了,以前挂在另一个服务器上没问题,现在换了一个服务器就不行了,在本地VS里面调试也没问题,
--------------------------------------------
一、确认字符串拼写正确,例如:
string FileName = path + DateTime.Now.ToString(&yyyyMMddHHmmss&) + System.IO.Path.GetFileName(fuload.FileName);
你传的是什么文件?xlsx?服务器是否安装Microsoft.ACE.OLEDB.12.0;和Microsoft.Jet.OLEDB.4.0;驱动
如果服务器是64位系统的IIS7,则是因为Oledb.4.0在64位系统上不支持,在对应的 IIS 应用程序池中,“设置应用程序池默认属性”/“常规”/”启用32位应用程序”,设置为
检查以上各个问题
-------------------------------------------
贴上一段运行成功的完整代码
/// &summary&
/// 读取Excel文件到DataSet中
/// &/summary&
/// &param name=&filePath&&文件路径&/param&
/// &returns&&/returns&
public static DataSet ToDataTable(string filePath)
string connStr = &&;
string fileType = System.IO.Path.GetExtension(fileName);
if (string.IsNullOrEmpty(fileType))
if (fileType == &.xls&)
connStr = &Provider=Microsoft.Jet.OLEDB.4.0;& + &Data Source=& + filePath+ &;& + &;Extended Properties=\&Excel 8.0;HDR=YES;IMEX=1\&&;
connStr = &Provider=Microsoft.ACE.OLEDB.12.0;& + &Data Source=& + filePath+ &;& + &;Extended Properties=\&Excel 12.0;HDR=YES;IMEX=1\&&;
string sql_F = &Select * FROM [{0}]&;
OleDbConnection conn =
OleDbDataAdapter da =
DataTable dtSheetName=
DataSet ds = new DataSet();
// 初始化连接,并打开
conn = new OleDbConnection(connStr);
conn.Open();
// 获取数据源的表定义元数据
string SheetName = &&;
dtSheetName= conn.GetOleDbSchemaTable(OleDbSchemaGuid.Tables, new object[] { null, null, null, &TABLE& });
// 初始化适配器
da = new OleDbDataAdapter();
for (int i = 0; i & dtSheetName.Rows.C i++)
SheetName = (string)dtSheetName.Rows[i][&TABLE_NAME&];
if (SheetName .Contains(&$&) && !SheetName .Replace(&'&, &&).EndsWith(&$&))
da.SelectCommand = new OleDbCommand(String.Format(sql_F, SheetName ), conn);
DataSet dsItem = new DataSet();
da.Fill(dsItem, tblName);
ds.Tables.Add(dsItem.Tables[0].Copy());
catch (Exception ex)
// 关闭连接
if (conn.State == ConnectionState.Open)
conn.Close();
da.Dispose();
conn.Dispose();
--------------------------------------------------
给出几个参考链接
C#读取Excel几种方法的体会:
Excel访问连接字符串中的的HDR=YES; IMEX=1含义
Persist Security Info参数的作用:
CSDN论坛帖子
提供与访问Excel表数据的连接字符串
.net如何读取客户端Excel文件
ActiveXObject 对象
C#操作Excel(读取)
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
访问:78414次
积分:1235
积分:1235
排名:第18024名
原创:42篇
转载:45篇
(1)(4)(1)(1)(6)(4)(8)(2)(7)(1)(14)(26)(11)(1)访问本页面,您的浏览器需要支持JavaScript怎样把网上银行下载的数据变成电子表格_百度知道
怎样把网上银行下载的数据变成电子表格
简单的说.通过“选择”:如果是 txt 文件或 Dat,只要打开的文件允许复制、写字板文件,再粘贴:(1)全选:执行第(3)步时;(4)调整数据在单元格中的格式;(3)新建 Excel 文件,打开:Ctrl + c (或按鼠标右键:同时按键,打开文件,按如下步骤操作、“保存”的办法来实现格式的转换。注2:1,在新的 Excel 表中“粘贴”:其它文件格式。注1,在弹出菜单中选“复制”)、“复制”下载文件的内容.试试可否通过“另存为”方式存为 Excel 格式的文件2,如果希望数据分散在各个单元格中,鼠标右键。通过复制-粘贴办法的详细方法如下,也可先用鼠标选定一个比较大的空白单元格区域,两个办法;(2)复制:Ctrl + a(或者用鼠标拖选全部),选“粘贴”,也可用此办法试试不知道你下载的数据文件是什么格式的:同时按键
其他类似问题
为您推荐:
您可能关注的推广回答者:
电子表格的相关知识
等待您来回答
下载知道APP
随时随地咨询
出门在外也不愁OLE操作Excel表,某些单元格读取不到数据 - 皓月星空 - ITeye技术网站
博客分类:
做自动化测试大多会用到数据驱动,而Excel表是最最常用的存储数据的工具,当使用OLE来操作Excel表读取数据时,有时会发生读不到某些单元格里的数据,单元格里存储的原本是中文或是字符,而读出来却是空值,这是为什么呢?
问题原因:
通过调试跟踪,发现OLE将问题单元格数据按Double类型读取而不是String类型,所以读取数字没有问题,遇到中文字符、英文字符、特殊字符就会因类型不一致而变成空值。因为OLE是按照表中第一行数据确定类型格式的,如果第一行第n列填写的是数字,那么OLE就认为是Integer或Double类型,填写的是字符,就认为是String类型。
解决方法:
OLE好像没有提供指定按何种类型去读取Excel表,自动识别的,所以只好在Excel表上下功夫了,这里有一个小技巧:将可能有字符数据的这一列第一行数据前面加上半角单引号(不是标题行哦),即 ' 这个符号,敲回车,你会发现数据并没有变化,但OLE就会认为这一列是String类型,读取任何数据都不会再有问题了。
浏览: 130534 次
来自: 上海
亲 执行时有报错,能否将源码以及jar包打包上传一下?
你好,我的cab
能运行,就是放在服务器 ...
缺了很多的包
public void contextInitiali ...
如何在已经存在的CRL文件中加入新的吊销证书列表?X509V2 ...访问本页面,您的浏览器需要支持JavaScript}

我要回帖

更多关于 表格密码忘了怎么办 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信