分享一下我老师大神的人工智能教程!零基础,通俗易懂!http://blog.csdn.net/jiangjunshow
也欢迎大家转载本篇文章。分享知识,造福人民,实现我们中华民族伟大复兴!
要处理一个平文本数据导入功能,因为原始数据有问题,部分字段有乱码和特殊字符,导致导出的数据在以文本形式查看时,里面的分隔符 /t 也就是Tab被弄错了,与前面的特殊字符组合成了一个乱码,导致最终数据使用 split("/t") 失败。这里使用字节流的方式,从最底层进行数据的抽取,以字节的 0x9; 作为字段分隔符,以 /r 和 /n 作为换行。完整代码如下:部分思路可以作为 BufferedReader + split 的替代品。
- [code=Java]package wis;
- import java.io.File;
- import java.io.FileInputStream;
- import java.io.FileNotFoundException;
- import java.io.IOException;
- import java.nio.ByteBuffer;
- import java.util.LinkedList;
- import java.util.List;
- /**
- * 逐行读取,以Tab分隔符划分的数据。<br>
- * 使用字节进行处理而不是字符串。<br>
- * 因为发现有些数据,由于特殊字符导致分隔符失效,所以必须在字节一级处理。
- *
- * @author JA