站内搜索: 请输入搜索关键词

当前页面: JAVA 编程资料牛鼻论坛Java 手机开发技术→请教6688上java程序中文问题

请教6688上java程序中文问题

发表新主题   回复此主题

第1楼 2002-11-05 11:49 threejiaomao 写道:

请教6688上java程序中文问题

各位大虾,你们好!
    小弟在学习j2me时,想做一个记事本程序(6688i平台),但是不知如何把gb2312编码的中文文本文件读进手机,以及如何以gb2312的形式保存编辑的文件,如有源码最好了!
    小弟的代码如下:
    读入时:
    buf为已经从文件中读入的byte[],这没问题,因为如果把下面的encoding拿掉,英文显示没问题中文出现乱码:(
    String encoding="gb2312";
    String content=new String(buf,encoding);
    编译时,"new String(buf,encoding)"报错说不支持这种encoding,我觉的代码没有问题,应该是java环境出错了。请问出现这种错误时如何处理?
(我用的是win2k+jb6+mobilset2.0,编码选的是gb2312)


第2楼 2013-08-31 12:44 Robot :

请教6688上java程序中文问题 相关


第3楼 2002-11-05 14:27 rocks 写道:

6688i的缺省encoding是不是就是GB啊?因为我看别人的程序读文件时好象并没有特意去设置encoding。
阿斌应该很有经验,我们等他的回贴吧:)

第4楼 2002-11-06 12:20 threejiaomao 写道:

我是在模似器(默认编码应该是iso5889.1)上测试程序的,读入中文就是乱码:(
不过模似器上运行microreader(编码选为chinese(gb2312))就能正常显示中文,我把脑子都想痛了,可就是解决不了。我的觉的可能是开发环境有问题

第5楼 2002-11-06 12:58 threejiaomao 写道:

对不起弄错了,默认编码应该是iso8859_1

第6楼 2002-11-06 13:10 threejiaomao 写道:

我在解决这个问题时,遇到的一些心得先共享出来,可能不太对。
class文件中的中文编码为utf8,可用ueidt打开查看。
jvm是把utf8编码的字符串转为unicode输出
一般文本文件是以gb2312编码的。
这样就要在程序和文本文件中进行编码转换了,我就是怎么转也出不来啊!

第7楼 2002-11-06 18:01 fengbin 写道:

siemens支持GB2312和Big5码
"gb2312"应该为大写“GB2312”,不能有丝毫差别。

第8楼 2002-11-06 19:48 rocks 写道:

[这个贴子最后由rocks在 2002/11/06 05:50pm 编辑]

to threejiaomao:
正解!
你可以用InputStreamReader直接读入GB2312编码的文件
给你一段例程:

InputStream is = this.getClass().getResourceAsStream("/mytext.txt");
Reader reader = new InputStreamReader(is, "GB2312");
StringBuffer buf = new StringBuffer();
int c = reader.read();
while (c != -1) {
   buf.append((char)c);
    c = reader.read();
}
is.close();
String myStr = buf.toString();


第9楼 2002-11-06 22:06 threejiaomao 写道:

感谢各位大虾的帮助,我今天在csdn上查了些资料已解决这个问题了,不过还要谢谢各位了!
我其实是范了一个低级语法错误,忘了加try{}catch{},正确代码如下:
try{
   String encoding="GB2312";
   String content=new String(buf,encoding);   
}
catch(Exception e)
{
   System.println(e.getmessage);
}
保存时类似用string.tobytes(encoding)
学java还不到一个月,有些语法不是很熟.希望其它的java初学者不要范同样的错误了。
对了版主,如果我做出了个稍微有点实用价值的程序,您要帮我发布哦:)

第10楼 2002-11-06 22:06 threejiaomao 写道:

不好意思有些单词打错了,我四级还没过呢:(

第11楼 2002-11-06 22:28 rocks 写道:

没问题啊:)
热烈欢迎在本站发布原创作品!

发表新主题   回复此主题