导航:首页 > 编程语言 > java读取文件中文

java读取文件中文

发布时间:2022-07-30 16:45:17

java如何向一个文件输入中文,读取中文。。能行吗

import java.io.*;
public class test11 {
public static void main(String[] args) {
solve();
}
public static void solve()
{
File file = null;
FileWriter out = null;
FileReader in = null;
System.out.println("请输入一行中文:");
String str = new java.util.Scanner(System.in).next();
char[] buf = new char[1024];
try
{
file = new File("D:/test.txt");
out = new FileWriter(file);
out.write(str);//写出
out.close();

in = new FileReader(file);
buf = new char[(int)file.length()];
in.read(buf);
System.out.println(new String(buf));//打印出读取的内容
}
catch (IOException e) {
e.printStackTrace();
}
finally
{
try
{

in.close();
}
catch (IOException e) {
e.printStackTrace();
}

}

}
}

❷ java 文件一个一个字节读取(但内容有中文)

这是题目吗?
一个汉字为两个byte,你一个个读出来转码是不行的。应该全部读出来统一转码,拿到数据之后想怎么输出就怎么输出了。
下面是个例子,不太确定对不对,不过能给你一个参考。
string str = "";
while((n=bu.read(a))!=-1)
{
str += new String(a,o,n)
}
return new String(str.getBytes("UTF-8"),"UTF-8");

第一个"UTF-8",是读取的文件的编码方式,第二个是要转成的编码方式。

❸ java 读txt中文乱码

txt文档一般是GBK编码格式的,你可以将它另存一下,改为Utf-8格式,你也可以将你的开发工具调成GBK编码格式,总之就是将你的开发环境的编码格式与你要读取的txt文件的编码格式调成一致的。或者此处你可以使用java的转换流,指定编码格式去读取txt文件,就是使用InputStreamReader(new FileInputStream(“filepath”),"GBK"),如果还是乱码,你就再换编码格式,不是UTF-8就是GBK

❹ 用java读取txt文件中的中文写入数据库出现中文乱码,怎么解决

1,设置下你数据库的编码,一般设置成UTF-8或者GBK或者GB2312
2,java读取TXT数据时可以转换下编码,再存进数据库,从数据库读取出来后显示时也同样的转换下编码,好像可以用个过滤器来弄的,

❺ java,为什么读取文本文件里面的汉字是乱码啊,怎么改啊

汉字的字符集不匹配,比如说用UTF-8字符集去解析GBK字符集的汉字就会变成乱码
这里不要用FileReader,这个类用的是默认字符集去读取文本,改用InputStreamReader,它的构造方法中能够指定字符集,让它作为BufferedReader的源,就不会乱码了
hcl=new
BufferedReader(new
InputStreamReader(new
FileInputStream(wjlj
),
"GBK"));
如果还是乱码,就把GBK改成UTF-8

❻ java中用RandomAccessFile,如何读取文件中的中文

个人认为,此类和字节流一样,你只能从里面得到字节.你要操作字符流,可以用现成的Reader
以下是java文档的解释:

public final String readLine()
throws IOException
从此文件读取文本的下一行。此方法可以从该文件的当前文件指针处成功地读取字节,直到到达行结束符或文件的末尾。每个字节都转换为一个字符,方法是采用该字符的低八位字节值,并将该字符的高八位设置为零。因此,此方法不支持完整的 Unicode 字符集。

文本行由回车字符 ('\r') 和一个新行字符 ('\n') 结束,回车字符后面紧跟一个新行字符,或者是文件的末尾。不使用行结束符,并且在返回的字符串中不包括结束符。

在读取了一个新行字符、读取了一个回车符和它后面的字节(查看是否为一个新行),到达文件的末尾或者抛出异常之前,此方法一直阻塞。

❼ JAVA读写文件,如何避免中文乱码

1、你要将所有的文件的编码都设置成UTF-8,还有,你的MyEclipse或者Eclipse应该配置jsp还有java文件还有项目都设置为UTF-8.
2、eclipse 中使用模板新建 JSP,xhtml等 文件时,默认的编码为:ISO-8859-1。 ISO-8859-1 编码对于中文的显示是不支持的,如果要支持简体中文,则编码方式应为 GBK 或者 GB2312 或者 UTF-8(推荐) 等。右键菜单栏window --> preferences --> 在type filter text中输入jsp; --> 选择下面的jsp -> 选择creating files组中的encoding 为UTF-8编码就可以了
如果要使新建立工程、java文件直接使UTF-8则需要做以下工作: 
1、windows->Preferences...打开"首选项"对话框,左侧导航树,导航到general->Workspace,右侧 Text file encoding,选择Other,改变为UTF-8,以后新建立工程其属性对话框中的Text file encoding即为UTF-8。
2、windows->Preferences...打开"首选项"对话框,左侧导航树,导航到general->Content Types,右侧Context Types树,点开Text,选择Java Source File,在下面的Default encoding输入框中输入UTF-8,点Update,则设置Java文件编码为UTF-8。其他java应用开发相关的文件 如:properties、XML等已经由Eclipse缺省指定,分别为ISO8859-1,UTF-8,如开发中确需改变编码格式则可以在此指定。

❽ 用java直接读取zip类型的文件时中文乱码问题怎么解决

1.一般是软件程序解码错误。如浏览器把GBK码当成是Big5码显示,或电子邮件程序把对方传来的邮件错误解码。如果在发送时编码错误,收件者的电邮程序是不能解码的,需要寄件者的电邮程序重新编码再寄。
2.字体档案(font file)不对。
3.来源编码错误,或文件受到破坏。
4.一种语言版本的操作系统安装了另外一种语言版本的应用程序,或者应用程序安装的升级补丁的语言版本与应用程序原来安装的语言版本不一致。
5.早期单字节的应用程序在打开双字节语言的文件时不能正确识别文字的分割,在换行的地方把一个字从中分成两段,导致紧接在后面的整个一行全部都是乱码。
6.低版本的应用程序不能识别高版本的程序创建的文件。
7.由于TXD等修改文件出现内部冲突,一些修改游戏的MOD(modification)CLEO、IV补丁、真实补丁、技能补丁、升级补丁和CCI人物补丁等游戏修改软件的“Readme”“必看!”等阅读文件会出现乱码。

❾ 如何解决Java IO读取文件中文乱码问题

/** * 读取文件内容 * * @param filePathAndName String 读取文件路径 * @return String 文件中的内容 */ 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写入文件,避免中文乱码。 /** * 写文件 * * @param filePathAndName String 写文件路径 * @param fileContent String 需要写入的内容 */ 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(); } }

阅读全文

与java读取文件中文相关的资料

热点内容
如何上网上设个人加密账户 浏览:44
linux打开ssh服务 浏览:78
微信位置可以加密吗 浏览:470
算法蛮力法 浏览:438
随机排练命令 浏览:147
python多进程并发 浏览:41
安卓软件安装如何躲避安全检测 浏览:647
奇幻潮翡翠台源码百度云盘 浏览:187
什么软件可以免费pdf转word 浏览:15
php正则表达式大全 浏览:394
androidntp时间 浏览:299
轮机长命令簿英文 浏览:148
oppo铃声设置被加密怎么处理 浏览:548
粤苗app图形验证码怎么填 浏览:899
管家婆架设云服务器 浏览:254
php的登录界面代码 浏览:997
php开发客户端 浏览:998
theisle测试服怎么搜服务器 浏览:447
广播PDF 浏览:218
单片机编程300例汇编百度 浏览:35