BBS水木清华站∶精华区
发信人: Yapith (早起的鸟儿有食吃), 信区: Java
标 题: Re: io问题?
发信站: BBS 水木清华站 (Sat Jun 5 21:20:50 1999)
【 在 happyws (天马行空) 的大作中提到: 】
我用RandomAccessFile的readLine()读入文件至TextArea域中,汉字读不进来,why?
不是读不出来, 是因为JAVA中String的格式默认是UNICODE(java1.1以上).
你从文件中读到的汉字是GB码. 每个汉字占两个BYTE, 由于你用了readLine()方法,
JAVA把你文件中的一行原样不动的拷贝到了字符串中 , 所以你得到的是一个GB编码
的异类的String, 而JAVA在输出和操作字符串时均认为它的字符串是UNICODE的, 而
按照UNICODE去处理它 , 就会产生错误结果. 有关转化GB码和UNICODE码的问题,
请看1211文.
编辑后同样用RandomAccessFile的方法writeBytes()将编辑结果写入
新文件中,若以.java结束,则在vj中打不开,但是在dos下直接用jvc编译却可以;
同样以.c结束,则在Turbo c中打不开;
why?Thank you for your reply!
--
※ 修改:·happyws 於 Jun 5 13:28:32 修改本文·[FROM: 166.111.54.57]
--
世间有百媚千红 我独爱你那一种。
※ 来源:·BBS 水木清华站 bbs.net.tsinghua.edu.cn·[FROM: Software-Engine]
BBS水木清华站∶精华区