当前位置: 技术问答>java相关
请教java在序列化时的中文问题?
来源: 互联网 发布时间:2015-05-01
本文导语: 我想把一个JTextPane进行序列化。 在JTextPane中的文档为全英文时完全正常。 但当其中有几个中文字符时,它在序列化(调用WriteObject()方法) 时就弹出一个NotSeriableException。 不知道是否和java的数据库的中文问题一...
我想把一个JTextPane进行序列化。
在JTextPane中的文档为全英文时完全正常。
但当其中有几个中文字符时,它在序列化(调用WriteObject()方法)
时就弹出一个NotSeriableException。
不知道是否和java的数据库的中文问题一样,由于中文字符的特殊编码,使
java在序列化时不能正确的识别序列化对象,导致序列化失败。
如果要象数据库的中文那样进行转码的话,应该如何处理?
在JTextPane中的文档为全英文时完全正常。
但当其中有几个中文字符时,它在序列化(调用WriteObject()方法)
时就弹出一个NotSeriableException。
不知道是否和java的数据库的中文问题一样,由于中文字符的特殊编码,使
java在序列化时不能正确的识别序列化对象,导致序列化失败。
如果要象数据库的中文那样进行转码的话,应该如何处理?
|
我以前序列化过JTable的TableModel,也有中文在里面可是没有出现什么问题
我认为中文在序列化上应该不存在问题的,你的问题在于其他地方上面吧
我看也没有必要序列化整个JTextPane,相关属性?都取出来得了,不会有多少
我认为中文在序列化上应该不存在问题的,你的问题在于其他地方上面吧
我看也没有必要序列化整个JTextPane,相关属性?都取出来得了,不会有多少
|
实在不行你可以只初始化你要用的东西
如定义一个String str= JtextPane.getText();
然后把str序列化试试
如定义一个String str= JtextPane.getText();
然后把str序列化试试
|
可能是个bug,具体的出错信息是什么?哪个类不能serialize?
|
用中文编译java程序
javac -encoding gb2312 ...
javac -encoding gb2312 ...
|
这个问题我们也遇到过,现在的swing包里面的确有很多东西是不能直接序列化的,含中文的JText控件好像都不行,只好把中文部分抽出来另存了。以后的swing包会改进串行化问题,但1.4.0还没有