最近在做一个上传的功能,记录下自己的感受。

刚开始我用的是excel上传;但是发现客户服务器有用64位的,使用的时候程序会报错;

  未在本地计算机上注册“Microsoft.Jet.OLEDB.4.0”提供程序

经查阅资料,发现是excel对64位的兼容性很差;64位操作系统不支持Microsoft OLE DB Provider for Jet驱动程序,也不支持更早的Microsoft Access Driver (*.mdb)方式连接。所以用于Access 和 Excel 数据库的 MicrosoftOLE DB Provider for Jet 在 64 位版本中不可用,也就是说,如下两种连接字符串都已经无法正常工作了:

"Provider=Microsoft.Jet.OLEDB.4.0;DataSource="&Server.mappath(db)
"driver=Microsoft AccessDriver (*.mdb);DBQ="&Server.MapPath(db)

我查找的解决方案中最多的是把程序在vs下重新编译:“生成-配置管理器-点击anyCPU-选择新建-创建x86”;解决。
刚解决了这个问题,又一个问题出来了,另一个客户的服务器上没有装office;这又要怎么办呢,再求救度娘,发现要将excel的几个dll打包到自己的程序中,可素可素

这样也太麻烦点了吧。这次我没有照做,而是选择的改变上传的文件格式;本来就是一块儿很小的东西,没有必要把它搞这么麻烦。我选择了csv文件。在网上有现成的

读文件代码;直接用就行了。但是又遇到问题了,编码问题;用记事本或者写字板打开都没问题;但是用excel打开的时候问题来了,一堆乱码。肿么回事捏捏捏!原来excel打开默认的编码方式是ANSI,而ANSI标准不太统一,程序处理中文一般采用gb2312或者gbk,等;不过这个小问题对于我的项目来说可以忽略;让客户选择其他打开方式就行了,也没再往下探索了,你,知道吗?

     总结:在使用某种特定技术之前应该要考虑它的使用平台和可移植性。

csv 文件用Excel打开乱码的更多相关文章

  1. java导出csv文件使用Excel打开乱码问题

    写一个csv文件,发现使用 notpad++ 打开是没有问题的,但是使用 Excel 打开之后显示乱码 刚开始的代码是这样子的: ByteArrayOutputStream os = new Byte ...

  2. 解决CSV文件用Excel打开乱码问题

    这篇文章适合有一定编码基础的人看,纯手动解决乱码问题请参见: 转码保存后,重新打开即可. 转码操作如下: 编辑器->另存为->ASCII码格式文件/UTF-8含BOM格式->保存. ...

  3. 如何解决PHP生成UTF-8编码的CSV文件用Excel打开乱码的问题

    为了识别 Unicode 文件,Microsoft 建议所有的 Unicode 文件应该以 ZERO WIDTH NOBREAK SPACE字符开头.这作为一个”特征符”或”字节顺序标记(byte-o ...

  4. 解决PHP生成UTF-8编码的CSV文件用Excel打开乱码的问题

    在要输出的内容前先输出"\xEF\xBB\xBF", eg:要输出的内容保存在$content里$content = "\xEF\xBB\xBF".$conte ...

  5. PHP生成UTF-8编码的CSV文件用Excel打开乱码的解决办法

    什么是BOM? 在UCS 编码中有一个叫做”ZERO WIDTH NO-BREAK SPACE”的字符,它的编码是FEFF.而FFFE在UCS中是不存在的字符,所以不应该出现在实际传输中.UCS规范建 ...

  6. PHP生成UTF-8编码的CSV文件用Excel打开乱码的问题

    在你要输出的内容前先输出"\xEF\xBB\xBF",例如:你要输出的内容保存在$content里$content = "\xEF\xBB\xBF".$cont ...

  7. PHP 导出 CSV 文件用 Excel 打开出现中文乱码

    本篇文章由:http://xinpure.com/php-export-csv-file-opened-by-excel-appear-garbled/ 乱码情况 写了一段导出 CSV 文件的代码,可 ...

  8. 解决Arcgis10.2.2中dbf文件用EXCEL打开乱码问题

    1.开始 -- 运行,输入”Regedit“,打开 注册表 . 2.如是用的是 10.x 版本 ArcGIS Desktop,定位到 ‘计算机\HKEY_CURRENT_USER\Software\E ...

  9. CSV用excel打开乱码

    utf-8 csv 文件用 excel 打开乱码问题 其实这个问题很久之前遇到过, 应该是没解决, 当时的情况是openoffice打开正常而excel打开不正常, 后来也没解决了, 只能把编码转了. ...

随机推荐

  1. 用户IP地址的三个属性的区别(HTTP_X_FORWARDED_FOR,HTTP_VIA,REM_addr

    转自http://www.blogjava.net/Todd/archive/2009/10/09/297590.html 一.没有使用代理服务器的情况: REMOTE_ADDR = 您的 IP    ...

  2. SpringMVC-DispatcheServlet

    1 HandlerMapping->HandlerAdapter->ViewResolver ->HandlerExceptionResolver 2

  3. php __invoke 和 __autoload

    当在对象后面添加()时候调用 __invoke <?php class Person { private $name; private $age; public function __const ...

  4. 不是SELECTed表达式

    sql语句如下: select distinct(p.project_name) name,p.pkid pkid, p.report_year year, q.cor_name cor_name,g ...

  5. js②

    操作符 ECMA-262描述了一组用于操作数据值的操作符,包括算术操作符(如加号和减号).位操作符.关系操作符和相等操作符. 一元操作符 递增和递减操作符(++ --) 一元加和减操作符 对非数值应用 ...

  6. 使用checkbox做出radiobutton的效果

    首先分别使用不同name的checkbox放在同一个tr的两个td内.并为他们设置onclick事件来改变点击后状态. php: str[info]="<table align='ce ...

  7. String类常用方法小节

    (1)String.equals() 返回值是boolean类型 equals(Object anObject)           将此字符串与指定的对象比较. (2)length() 返回值是in ...

  8. CCF 201612-2 工资计算 java 解题

    问题描述 小明的公司每个月给小明发工资,而小明拿到的工资为交完个人所得税之后的工资.假设他一个月的税前工资(扣除五险一金后.未扣税前的工资)为S元,则他应交的个人所得税按如下公式计算: 1) 个人所得 ...

  9. Hibernate映射一对一关联关系

    映射一对一关联 Hibernate提供了两种映射一对一关联关系的方式,分别是按照外键映射和按照主键映射. 下面是员工表和档案信息表(员工和档案表之间的关系是一对一的关系)  档案表(dept) pub ...

  10. bootstraps字体图标无法显示

    使用bootstraps字体图标,必须在css的同级文件夹下,建立新的文件夹为fonts,放入一下文件. 在还是无法显示字体图标的情况下,可查看bootstraps.css中的 @font-face ...