锐英源软件
第一信赖

精通

英语

开源

擅长

开发

培训

胸怀四海 

第一信赖

当前位置:锐英源 / 开源技术 / System.IO.InvalidDataException:“解码时找到无效数据。”
联系方式
固话:0371-63888850
手机:138-0381-0136
Q Q:396806883
微信:ryysoft
人工智能QQ群:14372360
头条号:软件技术及人才和养生
m
服务方向
人工智能数据处理
人工智能培训
kaldi数据准备
小语种语音识别
语音识别标注
语音识别系统
语音识别转文字
kaldi开发技术服务
软件开发
运动控制卡上位机
机械加工软件
软件开发培训
Java 安卓移动开发
VC++
C#软件
汇编和破解
驱动开发

System.IO.InvalidDataException:“解码时找到无效数据。”


背景

近期写一个SEO工具,读取大量文件,读取一个文件时遇到:System.IO.InvalidDataException:“解码时找到无效数据。”错误。

分析过程

错误代码如下:

StreamReader reader = new StreamReader(openFileDialog1.FileName, System.Text.Encoding.UTF8);

HtmlParser.HtmlDocument document = HtmlParser.HtmlDocument.Create(reader, "");

 

开始认为是文件多,环境里内存占用多对代码有影响,就减少了循环次数和访问文件个数,依然有错误,用其它编辑器打开文件正常,能看到内容,实在想不到办法,在循环里加了try catch,把异常捕获,不影响循环执行,等于说问题没找到解决办法,不过目标肯定是文件内容和文件格式,用的VS2019,不过.NET平台不是最新的,如果谁看到这篇文件,也可以考虑用最新的.NET平台来试下代码,看能不能解决。

另外我用的是StreamReader,大家可以换别的读取文件方式和文件编码对象。

总结

用Ultraedit可以看到文件格式,打开这个报错文件,提示格式是U8-DC,和报错文件同目录下其它文件也是U8-DC格式,所以文件格式问题可能不是解决方向。

因为是我一个人用的工具,工具的结果重要,某个文件无所谓,所以我用绕开的方法解决问题。这也象有的公司代码比较旧,只要能解决问题的思路一样,开发环境千变万化,只求结果才好。

友情链接
版权所有 Copyright(c)2004-2021 锐英源软件
公司注册号:410105000449586 豫ICP备08007559号 最佳分辨率 1024*768
地址:郑州大学北校区院(文化路97号院)内劳动服务器公司办公楼一层