读取Excel数据到GridView相关问题(待完善)
2007-10-12 10:57
267 查看
参考文献
http://www.knowsky.com/345281.html
(1)数据读取
Excel表格里的数据如下
A B C
1 a1 b1 c1
2 a2 b2 c2
3 a3 b3 c3
4 a4 b4 c4
5 a5 b5 c5
select * from [Sheet1$]
读取到的数据如下
a2 b2 c2
a3 b3 c3
a4 b4 c4
a5 b5 c5
select * from [Sheet1$A1:C5]
读取到的数据如下
a2 b2 c2
a3 b3 c3
a4 b4 c4
a5 b5 c5
select * from [Sheet1$A3:C5]
读取到的数据如下
a4 b4 c4
a5 b5 c5
问题一出来了:有效区域内第一行始终读不出来
原因:根据默认连接字符串中,数据提供程序会将有效区域内第一行作为列名(具体显示F1,F2,F3还是其他,有待研究,目前只知道输入汉字则显示汉字)
解决方法:修改连接字符串
默认连接字符串
"provider=microsoft.jet.oledb.4.0;data source=" + @"G:\测试Excel.xls" + ";extended properties='excel 8.0;'"
修改后
"provider=microsoft.jet.oledb.4.0;" + "data source=" + @"G:\测试Excel.xls" + ";extended properties='Excel 8.0;HDR=NO;'"
解释一下:
HDR=NO表示把有效区域内第一行作为数据
HDR=YES表示把有效区域内第一行作为列名
问题二:Excel表格里显示的数据读到GridView里就不一样了
原因:读取文件时,Excel会以第一行的数据类型为参考
解决方法:修改连接字符串
默认连接字符串
"provider=microsoft.jet.oledb.4.0;data source=" + @"G:\测试Excel.xls" + ";extended properties='excel 8.0;'"
修改后
"provider=microsoft.jet.oledb.4.0;" + "data source=" + @"G:\测试Excel.xls" + ";extended properties='Excel 8.0;IMEX=1;'"
解释一下:
IMEX=1来把混合型作为文本型读取
总结:
综合问题一和问题二
连接字符串写成如下方式
"provider=microsoft.jet.oledb.4.0;" + "data source=" + @"G:\测试Excel.xls" + ";extended properties='Excel 8.0;HDR=NO;IMEX=1'";
http://www.knowsky.com/345281.html
(1)数据读取
Excel表格里的数据如下
A B C
1 a1 b1 c1
2 a2 b2 c2
3 a3 b3 c3
4 a4 b4 c4
5 a5 b5 c5
select * from [Sheet1$]
读取到的数据如下
a2 b2 c2
a3 b3 c3
a4 b4 c4
a5 b5 c5
select * from [Sheet1$A1:C5]
读取到的数据如下
a2 b2 c2
a3 b3 c3
a4 b4 c4
a5 b5 c5
select * from [Sheet1$A3:C5]
读取到的数据如下
a4 b4 c4
a5 b5 c5
问题一出来了:有效区域内第一行始终读不出来
原因:根据默认连接字符串中,数据提供程序会将有效区域内第一行作为列名(具体显示F1,F2,F3还是其他,有待研究,目前只知道输入汉字则显示汉字)
解决方法:修改连接字符串
默认连接字符串
"provider=microsoft.jet.oledb.4.0;data source=" + @"G:\测试Excel.xls" + ";extended properties='excel 8.0;'"
修改后
"provider=microsoft.jet.oledb.4.0;" + "data source=" + @"G:\测试Excel.xls" + ";extended properties='Excel 8.0;HDR=NO;'"
解释一下:
HDR=NO表示把有效区域内第一行作为数据
HDR=YES表示把有效区域内第一行作为列名
问题二:Excel表格里显示的数据读到GridView里就不一样了
原因:读取文件时,Excel会以第一行的数据类型为参考
解决方法:修改连接字符串
默认连接字符串
"provider=microsoft.jet.oledb.4.0;data source=" + @"G:\测试Excel.xls" + ";extended properties='excel 8.0;'"
修改后
"provider=microsoft.jet.oledb.4.0;" + "data source=" + @"G:\测试Excel.xls" + ";extended properties='Excel 8.0;IMEX=1;'"
解释一下:
IMEX=1来把混合型作为文本型读取
总结:
综合问题一和问题二
连接字符串写成如下方式
"provider=microsoft.jet.oledb.4.0;" + "data source=" + @"G:\测试Excel.xls" + ";extended properties='Excel 8.0;HDR=NO;IMEX=1'";
相关文章推荐
- c#读取Excel数据到Gridview
- 关于从GridView表中导出数据到Excel表中,身份证或者长度过长的数据在Excel中无法正常显示的问题
- ADO 读取Excel文件数据, 丢失数据或数据错误问题。
- datagrid gridview 倒出数据为 excel 时,编号问题
- php excel 读取日期问题 在 php excel 读取 xls 格式的文件时,xls 上面显示的是正常的日期格式 但是读取出来的话,就会是一个万位整形数据,这显然不是我们想要的日
- C# 读取EXCEL文件出现数据丢失问题
- DataSet读取excel数据丢失问题解决
- c#读取Excel数据到Gridview
- 从GridView把数据导成Excel会出现的问题
- 读取excel文件显示在gridview中数据.字符.数字混合时无法全部读取的问题!
- C# 读取EXCEL文件出现数据丢失问题
- C# 读取EXCEL文件出现数据丢失问题
- gridview读取Excel文件中的数据,并将其导入数据库
- C# 读取EXCEL文件出现数据丢失问题,数据不完整
- C# 读取EXCEL文件出现数据丢失问题
- c#读取Excel数据到Gridview
- Aas.Net上传Excel读取时丟失数据的问题(转)
- 解决ADO读取Excel,数据丢失、数据错误、数据乱码问题
- 将GridView中的数据导出到Excel中下载并且解决乱码的问题
- 读取excel的数据,在GridView中显示