江西广告网

标题: java中 中文问题详解 [打印本页]

作者: cat    时间: 2008-12-27 17:41
标题: java中 中文问题详解
  预备知识:    1.字节和unicode     Java内核是unicode的,就连class文件也是,但是很多媒体,包括文件/流的保存方式     是使用字节流的。 因此Java要对这些字节流经行转化。char是unicode的,而byte是字节.     Java中byte/char互转的函数在sun.io的包中间有。其中ByteToCharConverter类是中调度,     可以用来告诉你,你用的Convertor。其中两个很常用的静态函数是      public static ByteToCharConverter getDefault() ;      public static ByteToCharConverter getConverter(String encoding);     如果你不指定converter,则系统会自动使用当前的Encoding,GB平台上用GBK,EN平台上用     8859_1          我们来就一个简单的例子:        "你"的gb码是:0xC4E3 ,unicode是0x4F60        你用:        --encoding="gb2312";        --byte b[]={(byte)"u00c4",(byte)"u00E3"};        --convertor=ByteToCharConverter.getConverter(encoding);        --char [] c=converter.convertAll(b);        --for(int i=0;i0xC4,0x00E3->0xE3,因此0xC4,0xE3被放进了    --文件   ----   1.对于JSP正文的解释:   --Tomcat首先看一下你的叶面中有没有"   你好         http://localhost/test/test.jsp?value=你      结果:你好你      但这种方法局限性较大,比如对上传的文章分段,这样的做法是死定的,最好的   解决方案是用这种方案:         你好            必读好文,但解决方案不敢恭维      




欢迎光临 江西广告网 (http://bbs.jxadw.com/) Powered by Discuz! X3.2