当前位置:  技术问答>java相关

怎么将big5转化成gb2312,急!

    来源: 互联网  发布时间:2015-03-25

    本文导语:  急着用,谢谢! | Java 中文问题的根源分析及解决  在简体中文 MS Windows 98 + JDK 1.3 下,可以用 System.getProperties() 得到 Java 运行环境的一些基本属性,类 PoorChinese 可以帮助我们得到...

急着用,谢谢!

|
Java 中文问题的根源分析及解决 

在简体中文 MS Windows 98 + JDK 1.3 下,可以用 System.getProperties() 得到 Java 运行环境的一些基本属性,类 PoorChinese 可以帮助我们得到这些属性。 

类 PoorChinese 的源代码: 

public class PoorChinese { 

  public static void main(String[] args) { 

      System.getProperties().list(System.out); 

  } 



执行 java PoorChinese 后,我们会得到: 

系统变量 file.encoding 的值为 GBK ,user.language 的值为 zh , user.region 的值为 CN ,这些系统变量的值决定了系统默认的编码方式是 GBK 。 

在上述系统中,下面的代码将 GB2312 文件转换成 Big5 文件,它们能够帮助我们理解 Java 中汉字编码的转化: 

  

import java.io.*; 

import java.util.*; 

  

public class gb2big5 { 

  

static int iCharNum=0; 

  

public static void main(String[] args) { 

System.out.println("Input GB2312 file, output Big5 file."); 

if (args.length!=2) { 

System.err.println("Usage: jview gb2big5 gbfile big5file"); 

System.exit(1); 

  } 

String inputString = readInput(args[0]); 

writeOutput(inputString,args[1]); 

System.out.println("Number of Characters in file: "+iCharNum+"."); 



  

static void writeOutput(String str, String strOutFile) { 

try { 

FileOutputStream fos = new FileOutputStream(strOutFile); 

Writer out = new OutputStreamWriter(fos, "Big5"); 

out.write(str); 

out.close(); 



catch (IOException e) { 

e.printStackTrace(); 

e.printStackTrace(); 





  

static String readInput(String strInFile) { 

StringBuffer buffer = new StringBuffer(); 

try { 

FileInputStream fis = new FileInputStream(strInFile); 

InputStreamReader isr = new InputStreamReader(fis, "GB2312"); 

Reader in = new BufferedReader(isr); 

int ch; 

while ((ch = in.read()) > -1) { 

iCharNum += 1; 

buffer.append((char)ch); 



in.close(); 

return buffer.toString(); 



catch (IOException e) { 

e.printStackTrace(); 

return null; 







  

编码转化的过程如下: 

      ByteToCharGB2312        CharToByteBig5 

GB2312------------------>Unicode------------->Big5 


试试反转可以不

|
给EMAIL我我寄个程序给你。shmilu@sina.com

    
 
 
 
本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • 为何程序中可以使用简体中文,不可以使用 big5 码的繁体中文
  • request.setCharacterEncoding("big5")為什麼通不過編譯?
  • sqlserver iis7站长之家
  • 用JAVA怎么实现GB码到BIG5的转换?
  • 如何实现GB<->BIG5内码间的转换?
  • php汉字转码 GBK到Big5编码转换


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3