如何解决java读取csv文件时出现乱码
首先我们要知道怎么读取csv文件:
第一步首先我们要找到要读取的csv文件,csv文件是一种普通的文本文件,可以用excel表格方式打开第二步我们打开eclipse软件创建一个java项目,并新建一个读取和写出csv文件的类
第三步在类的主方法中,我们首先确定读取的csv文件路径,和写出的csv文件路径,这里操作的是,将读取的csv文件里面含有省和市的字符串按空格分开写入到新的csv文件
第四步我们使用 BufferedReader reader = new BufferedReader()方法来读取和写入csv文件,循环进行遍历,其中 inString.replace(str[i], "," + str[i] + ",");来替换字符串,
第五步我们运行项目指挥,打开写入csv文件的路径,可以看到已经生成了一个新的csv文件,
第六步我们双击打开生成的csv文件,可以看到含有省,市字的字符串都被空格分开,这样就成功了进行了读取和写入csv文件
csv文件默认编码为ANSI,java读取CSV出现乱码主要是编码不一致问题。
DataInputStream in = new DataInputStream(new FileInputStream(new File("d:\\*.csv")));BufferedReader br= new BufferedReader(new InputStreamReader(in,"GBK"));//这里如果csv文件编码格式是utf-8,改成utf-8即可
InputStreamReader类是从字节流到字符流的桥接器:它使用指定的字符集读取字节并将它们解码为字符。 它使用的字符集可以通过名称指定,也可以明确指定,或者可以接受平台的默认字符集。
BufferedReader类从字符输入流中读取文本并缓冲字符,以便有效地读取字符,数组和行。Reader构成的对象是字符对象,每次的读取请求都会涉及到字节读取解码字符的过程,而BufferedReader类中有设计减少这样的解码次数的方法,进而提高转换效率。
以上就是java读取csv文件乱码怎么解决的详细内容,更多请关注亿速云其它相关文章!
声明:本站所有文章资源内容,如无特殊说明或标注,均为采集网络资源。如若本站内容侵犯了原著者的合法权益,可联系本站删除。