其中手机里面的字符串基本上都是采用的UTF-8的编码法,这种编码的格式介于ASCII和unicode编码法之间,经常碰到的中文问题主要分为以下几种:
1.rms数据库读写的问题;
2.在jad中书写游戏中文名称并且显示;
3.网络传输中中文问题(kxml传输的解码);
4.部分的模拟器也不支持中文(比如Nokia 60系列模拟器)。
解决第一个问题就是利用writeUTF() 和 readUTF()函数接口,他们提供了一个由从Unicode到UTF-8的相互转化的途径。第二个问题,建议还是自己手工用文本工具转化成UTF-8的编码写在上面,否则你用unicode码制写入中文的话,在模拟器或者实际设备上就有无法识别而导致程序不能执行的危险。第三个问题在于不同的手机其实支持的默认码制也是不一样的,CLDC的系统属性"microedition.encoding"定义了设备的默认字符编码,它的值可以使用System.getProperty方法取得。我们也可以转化成相关的支持的编码机制来实际的运行我们的程序。最后一个问题,主要都是集中在Nokia 60系列模拟器上,那真的没有办法了,要么只有等待他的中文版本出来了,要么可以考虑在文字的部分可以使用贴图在代替。
1.rms数据库读写的问题;
2.在jad中书写游戏中文名称并且显示;
3.网络传输中中文问题(kxml传输的解码);
4.部分的模拟器也不支持中文(比如Nokia 60系列模拟器)。
解决第一个问题就是利用writeUTF() 和 readUTF()函数接口,他们提供了一个由从Unicode到UTF-8的相互转化的途径。第二个问题,建议还是自己手工用文本工具转化成UTF-8的编码写在上面,否则你用unicode码制写入中文的话,在模拟器或者实际设备上就有无法识别而导致程序不能执行的危险。第三个问题在于不同的手机其实支持的默认码制也是不一样的,CLDC的系统属性"microedition.encoding"定义了设备的默认字符编码,它的值可以使用System.getProperty方法取得。我们也可以转化成相关的支持的编码机制来实际的运行我们的程序。最后一个问题,主要都是集中在Nokia 60系列模拟器上,那真的没有办法了,要么只有等待他的中文版本出来了,要么可以考虑在文字的部分可以使用贴图在代替。