导航:首页 > 编程语言 > javautf8转gbk

javautf8转gbk

发布时间:2022-08-10 11:10:24

java utf 8转gbk

utf8和gb2312本来就是两个不同的字符集,对于中文来说,它们的编码并不会相同。如果刚开始的字符是utf8的,那么转换为gb2312后自然会是乱码;如果初始时是gb2312的中文,而后经utf8中间编码后又从utf8转为gb2312后不会是乱码的。

我想是这样的!

这有往篇文章,是关于java字符编码相关的,讲的很详细,有代码示例,你可以去看一下:http://vinter.javaeye.com/blog/670502

⑵ 有没有做过Java的UTF-8编码转GBK



importjava.io.BufferedReader;
importjava.io.BufferedWriter;
importjava.io.File;
importjava.io.FileInputStream;
importjava.io.FileOutputStream;
importjava.io.InputStreamReader;
importjava.io.OutputStreamWriter;


publicclassConvertCharset
{
=System.getProperty("line.separator");

(Stringpath,Stringback,Stringcs1,Stringcs2)
{
try
{
Filedir=newFile(path);
//adirectory,notafile
if(dir.isDirectory())
{
File[]files=dir.listFiles();
for(inti=0;i<files.length;i++)
{
Filedirt=files[i];
Stringfn=dirt.getName();
Stringname=path+File.separator+fn;

//recursion
if(dirt.isDirectory())
{
convertCharset(name,back+File.separator+fn,cs1,cs2);
}
else
{
//write
Filedest=newFile(back);
if(!dest.exists())
{
dest.mkdirs();
}
FileOutputStreamfos=newFileOutputStream(back+File.separator+fn);
OutputStreamWriterosw=newOutputStreamWriter(fos,cs2);
BufferedWriterbw=newBufferedWriter(osw);

//read
FileInputStreamfis=newFileInputStream(name);
InputStreamReaderisr=newInputStreamReader(fis,cs1);
BufferedReaderbr=newBufferedReader(isr);
Stringline=null;
while(null!=(line=br.readLine()))
{
bw.write(line+SEPARATOR);
}
//write
fos.flush();
osw.flush();
bw.flush();
bw.close();
osw.close();
fos.close();

//read
br.close();
isr.close();
fis.close();
}
}
}
//asinglefile
else
{
//write
Filedest=newFile(back);
if(!dest.exists())
{
dest.mkdir();
}
FileOutputStreamfos=newFileOutputStream(back+File.separator+dir.getName());
OutputStreamWriterosw=newOutputStreamWriter(fos,cs2);
BufferedWriterbw=newBufferedWriter(osw);

//read
FileInputStreamfis=newFileInputStream(path);
InputStreamReaderisr=newInputStreamReader(fis,cs1);
BufferedReaderbr=newBufferedReader(isr);
Stringline=null;
while(null!=(line=br.readLine()))
{
bw.write(line+SEPARATOR);
}
//write
fos.flush();
osw.flush();
bw.flush();
bw.close();
osw.close();
fos.close();

//read
br.close();
isr.close();
fis.close();
}
System.out.println("ConvertSuccess!");
}
catch(Exceptione)
{
e.printStackTrace();
System.out.println("ConvertFailed!");
}
}

publicstaticvoidmain(String[]args)
{
//asinglefile
convertCharset("I:\2013313workspace\Yaojiangji\src\yaojiangji\paixu.java",
"I:\2013313workspace\Yaojiangji\back",
"UTF-8",
"GBK");

//notafile,it'sadirectory
// convertCharset("I:\2013313workspace\Yaojiangji\src\yaojiangji",
// "I:\2013313workspace\Yaojiangji\back\yaojiangji",
// "UTF-8",
// "GBK");
}
}

⑶ java怎么把UTF-8字符串转成GBK字符串

java不同编码之间进行转换,都需要使用unicode作为中转。

以utf-8转gbk为例,示例代码如下:

Stringt="这是一个字符串aaa111";
Stringutf8=newString(t.getBytes("UTF-8"));
System.out.println(utf8);
Stringunicode=newString(utf8.getBytes(),"UTF-8");
System.out.println(unicode);
Stringgbk=newString(unicode.getBytes("GBK"));
System.out.println(gbk);

⑷ java txt文件utf-8转GBK的问题

步骤一:直接把文件备份。

步骤二:打开文件,选择“另存为”。

步骤三:编码格式从“UTF-8"切换到“GBK”(默认)。保存即可。

⑸ 高分求一个utf-8转gbk的方法 Java

这要看它提供的接口是怎样的
new String(byte[],String)
要转码,这个就足够了,不用这个还能有啥样的。用这个不会错的
1。先确保下你成功的转过来了,最好能逐行测试,每句完后都看下格式,最好能写个测试代码把每句完后的格式都输出下看看,字符串和格式都要分别取来看
2。确保你的utfStr是UTF8的,确保它提供的接口是按GBK接收的。

只要这两点满足应该不会有问题的,多检查下吧
再注意下看是不是MAS的版本不同造成的

⑹ java中UTF-8转GBK为什么不会出现中文乱码

Java中UTF-8转GBK之所以不会出现中文乱码,是因为UTF-8编码为兼容性最大的字符集编码,它本身就支持中文字符。

Java代码转码范例:
String s = new String(ss.getBytes(),"GBK");
当你的内容本来就是正常的中文字符时,通过上面的语句转为GBK编码是不会有任何问题的,但如果你在转码之前的字符不是正确的中文字符,或者不是支持中文字符的字符集,那可能就会出现乱码问题。

UTF-8(8-bit Unicode Transformation Format)是一种针对Unicode的可变长度字符编码,又称万国码。由Ken Thompson于1992年创建。现在已经标准化为RFC 3629。UTF-8用1到6个字节编码UNICODE字符。用在网页上可以同一页面显示中文简体繁体及其它语言(如英文,日文,韩文)。

在Java开发中,特别是web开发,乱码是一种很常见而且很头疼的问题,这常常是由于页面端、服务端、数据库等几处所使用的字符不一致所致,故开发中,保持编码一致, 往往能减少由于乱码而带来的时间浪费,是一件非常重要的事情。

阅读全文

与javautf8转gbk相关的资料

热点内容
如何把扫描文件做成pdf格式 浏览:624
php个性qq源码 浏览:821
初学c语言显示源未编译 浏览:245
资产概况源码 浏览:472
dos命令建文件夹命令 浏览:379
解压的密码htm被屏蔽 浏览:502
冬天太冷冰箱压缩机不启动怎么办 浏览:83
手机打开vcf需要什么编译器 浏览:910
加密磁盘后开机很慢 浏览:271
长沙智能云控系统源码 浏览:258
阿里云服务器如何设置操作系统 浏览:999
超级命令的英文 浏览:784
做账为什么要用加密狗 浏览:586
考研群体怎么解压 浏览:159
linux修改命令提示符 浏览:226
圆圈里面k图标是什么app 浏览:63
pdf加空白页 浏览:948
linux服务器如何看网卡状态 浏览:318
解压新奇特视频 浏览:707
图书信息管理系统java 浏览:554