导航:首页 > 文件教程 > 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文件乱码相关的资料

热点内容
struts2验证文件 浏览:198
小米6app消息变成蓝色是什么情况 浏览:487
如何通过修改网站源代码获取会员 浏览:189
发文件一般用多少号字符 浏览:99
ps保存文件时提示文件已使用 浏览:625
什么版本win7好用 浏览:589
如何复制plc编程 浏览:55
缺少什么样的网站 浏览:890
建一个私彩网站多少钱 浏览:614
黑苹果固态硬盘驱动程序 浏览:61
u盘文件过大不能复制 浏览:901
谷歌浏览器49版本 浏览:978
xp系统网络故障提示码错误651 浏览:360
打开文件夹是有声音了 浏览:539
图片怎么样用文件夹发送 浏览:370
苹果5屏幕跟波浪一样 浏览:611
手机app违规到哪里举报 浏览:799
新时代说唱在哪个app上 浏览:273
电脑怎么打开qq文件怎么打开方式打开方式 浏览:766
苹果数据迁移包含哪些内容 浏览:715

友情链接