导航:首页 > 文件教程 > java读取csv文件乱码

java读取csv文件乱码

发布时间:2023-07-07 11:59:55

『壹』 java用BufferedReader读取文件中时总是乱码

@Test
publicvoidFileInput()throwsIOException{
Filef=newFile("io.txt");
FileInputStreamfip=newFileInputStream(f);
//构建InputStreamReader对象,编码与写入相同
InputStreamReaderreader=newInputStreamReader(fip,"UTF-8");
StringBufferstringBuffer=newStringBuffer();
while(reader.ready()){
//转成内char加到StringBuffer对象中容
stringBuffer.append((char)reader.read());
}
System.out.println(stringBuffer.toString());
reader.close();
fip.close();
}

『贰』 JAVA读写文件,如何避免中文乱码

最近在做HTML静态生成,需要从硬盘上把模版文件的内容读出来。然后,替换相关标签写到指定的文件中。无论是读写,都遇到了中文乱码问题。试过多种方法,发现下面一种可以避免中文乱码。(无论读取还是写入一定要进行编码转换。)

1、JAVA读取文件,避免中文乱码。

/**
* 读取文件内容
*
* @param filePathAndName
* String 如 c:\\1.txt 绝对路径
* @return boolean
*/
public static String readFile(String filePathAndName) {
String fileContent = "";
try {
File f = new File(filePathAndName);
if(f.isFile()&&f.exists()){
InputStreamReader read = new InputStreamReader(new FileInputStream(f),"UTF-8");
BufferedReader reader=new BufferedReader(read);
String line;
while ((line = reader.readLine()) != null) {
fileContent += line;
}
read.close();
}
} catch (Exception e) {
System.out.println("读取文件内容操作出错");
e.printStackTrace();
}
return fileContent;
}

2、JAVA写入文件,避免中文乱码。

public static void writeFile(String filePathAndName, String fileContent) {
try {
File f = new File(filePathAndName);
if (!f.exists()) {
f.createNewFile();
}
OutputStreamWriter write = new OutputStreamWriter(new FileOutputStream(f),"UTF-8");
BufferedWriter writer=new BufferedWriter(write);
//PrintWriter writer = new PrintWriter(new BufferedWriter(new FileWriter(filePathAndName)));
//PrintWriter writer = new PrintWriter(new FileWriter(filePathAndName));
writer.write(fileContent);
writer.close();
} catch (Exception e) {
System.out.println("写文件内容操作出错");
e.printStackTrace();
}
}

我试过写入的时候用

1、PrintWriter writer = new PrintWriter(new BufferedWriter(new FileWriter(filePathAndName)));

2、PrintWriter writer = new PrintWriter(new FileWriter(filePathAndName));

都不行。

以上代码经过运行可以避免中文乱码,关键是要编码转换。

『叁』 csv 文件打开乱码,有哪些方法可以解决

新建一个空文件,然后菜单里选 文件->导入,选择csv文件,然后选择编码UTF-8 或 GB18030(一般中文都是这两种格式,如果不行就再试试其他选项),这时界面上会预览导入内容

『肆』 java 用FileInputStream中read方法读取文件出现乱码

read方法读取复的是字节流(制每次读取一个字节),如果是中文,就是两个字节,就会出现乱码的。
可以通过BufferedReader 流的形式进行流缓存,之后通过readLine方法获取到缓存的内容。
BufferedReader bre = null;
try {
String file = "D:/test/test.txt";
bre = new BufferedReader(new FileReader(file));//此时获取到的bre就是整个文件的缓存流
while ((str = bre.readLine())!= null) // 判断最后一行不存在,为空结束循环
{
System.out.println(str);//原样输出读到的内容
};
备注: 流用完之后必须close掉,如上面的就应该是:bre.close(),否则bre流会一直存在,直到程序运行结束。

『伍』 java导出 ,CSV格式文件,中文显示成问号,怎么解决

要加上UTF-8 BOM头,不然在windows下打开会乱码.

『陆』 java读取csv文件出现乱码怎么办

这种文件说白了就是 数据用,分隔符隔开。
出现乱码估计是你文档字符格式的问题。你转成utf-8就不会出错了。

『柒』 java生成 csv excel 乱码怎么办

准备一个有乱码的CSV文件用于演示,如图。

首先我们右键此CSV文件,选择“用记事本打开”

打开后,点击“文件”--“另存为”。

我们发现默认编码是“UTF-8”,所以一些Excel表格软件就会显示乱码。对于这样,我们只要改成ANSI就行了,按确定。

5
用Excel表格软件再打开,就不会显示乱码了。

『捌』 java读取文件乱码

那是你选中的文件内容字符编码与jvm缺省的文件编码不一致,如unix下jvm缺省文件编码一般为iso8859-1,而回你的文件内容可能使用了GBK,可使用如下答代码:
FileInputStream fis = new FileInputStream(Abs);
InputStreamReader isr = new InputStreamReader(fis, "GBK"); //GBK替换成你文件内容使用的编码
BufferedReader br = new BufferedReader(isr);

阅读全文

与java读取csv文件乱码相关的资料

热点内容
vc修改文件名 浏览:149
linux65从域 浏览:321
用什么东西压缩文件 浏览:406
怎么删除ipad隐藏的APP 浏览:981
编程如何占用大量内存 浏览:116
多个excel表格文件如何组合 浏览:918
ubuntu内核升级命令 浏览:679
pgp文件夹 浏览:894
一键还原的文件是什么格式 浏览:581
女汉子微信名霸气十足 浏览:65
win10手机蓝屏修复 浏览:419
windows2008激活工具 浏览:259
g71的编程应注意什么 浏览:572
文件路径不符合是什么意思 浏览:543
qq如何换绑微信绑定 浏览:67
文件包下载的安装包在哪里 浏览:811
90版本升级不送 浏览:186
工具箱英文 浏览:382
南翔嘉定编程课哪里好 浏览:853
win10改变文件格式 浏览:475

友情链接