zoukankan      html  css  js  c++  java
  • .NET 里操作Excel 出现有些列的数据取不到的问题

    错误重现:

    -----------------------------------------------------------------------

    在导入Excel读取数据时,其中的一个字段保存的值有如下格式:"2011072014","20110Aad10","25124Adfa","例子asdfadf"  这样的 混合了 "字母/数字/中文"数据,在Excel表格中的前 8条 或 前 8+ 条数据中的 这个列中的数据都是 由纯数字组成的,如"2011072012","2011072013","2011072014",到了大于8行的时候的该列的数据组成变成了 数字+中文 + 字母的组合,这样就会出现取不到该列值的问题

    错误原因:

    -----------------------------------------------------------------------

    Excel读取数据列的格式 是按照每一列前8个数据的类型来判断读写时的类型的。比如前8个数据有3个是字幕,5个是数字,那么这一整列都是以数字型来读的,类型最多的那么不管第8条之后是什么类型,都当作这个类型来读取,那些字母都读不了。

    解决办法:

    -----------------------------------------------------------------------

    网上搜索到在读取Excel时,设置:"Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" + fileName + ";Extended Properties='Excel 12.0;HDR=Yes;IMEX=1;'";

    设置这个 IMEX=1 就可以解决了,我个人的实践证明这个方法是不可行的;解决办法是 设置列的格式为文本格式,你只需要在添加的前面增加一个“’”就可以了,显示出来的就是文本样子了,其实你在添加到单元格的时候都在前面添加一个“’”就可以了!

  • 相关阅读:
    HBase 列族数量为什么越少越好
    Hbase 认识及其作用
    Hbase 源码讲解
    Hbase 目录树
    rabbitmq 连接过程详解
    rabbit 兔子和兔子窝
    rabbit 函数参数详解
    rabbitmq 用户和授权
    火狐浏览器安装有道插件
    rabbitmq vhost
  • 原文地址:https://www.cnblogs.com/yinchengliang/p/3665680.html
Copyright © 2011-2022 走看看