首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > JAVA > Java相关 >

java 转码有关问题

2013-01-23 
java 转码问题问题是这样,在数据库中放入的是一个\u55DD\u5223...形式的字符串。这是一个造出的公式符合

java 转码问题
   问题是这样,在数据库中放入的是一个"\u55DD\u5223..."形式的字符串。

这是一个造出的公式符合之类的特殊字集,它被保存在数据库中,在读出以后

把它转显示为正常的符号。


   在程序中采用

    String str = “\u4221";
    CanvasMySymbol(str);

   可以正常显示自定义的符号

  
 现在若把它从数据库中读出该字符编码后,但是读出时,却给转义\u多增加了一个""
str中改变成了 “\\u4221"的形式,而在显示自定义符号时,就变成显示
 只显示” \u4221“的字符串。


      String str = getDataField("ff");   //从数据库读出
      CanvasMySymbol(str);


请问java高手前辈这个如何解决?


   曾经试图这么做过,以为数据库中存在的是iso字符集,先把它给放入到字符串,
在把它放入转入到字节流。再转成字符串,但是还是显示为 \u4221 ,如下

    String  str = getDataField(”ff“);
    byte[]  b = str.getBytes("ISO8859_1");
    String str1 = new String(b);


   按理说,我存入的是一个unicod字符集的编码字符串,如何把它正常的显示?
求指导。




     
   



   
[解决办法]

引用:
问题是这样,在数据库中放入的是一个"\u55DD\u5223..."形式的字符串。

这是一个造出的公式符合之类的特殊字集,它被保存在数据库中,在读出以后

把它转显示为正常的符号。


  在程序中采用

  String str = “\u4221";
  CanvasMySymbol(str);

  可以正常显示自定义的符号

  
 现在若把它从数据库中读出……

你说数据库里面存的是"\u4221",但是读出来就成了"\\u4221",然后CanvasMySymbol(str);
得到的就是"\u4221",对吗,有两种办法
第一种:
你转两遍String str = getDataField(”ff“);
String str1=CanvasMySymbol(str);
CanvasMySymbol(str1);
就能得到你想要的。
第二种:
String str = getDataField(”ff“);
String str1=str.substring(1);
CanvasMySymbol(str1);
得到你要的结果;
[解决办法]
引用:
问题是这样,在数据库中放入的是一个"\u55DD\u5223..."形式的字符串。

这是一个造出的公式符合之类的特殊字集,它被保存在数据库中,在读出以后

把它转显示为正常的符号。


  在程序中采用

  String str = “\u4221";
  CanvasMySymbol(str);

  可以正常显示自定义的符号

  
 现在若把它从数据库中读出……

你说数据库里面存的是"\u4221",但是读出来就成了"\\u4221",然后CanvasMySymbol(str);
得到的就是"\u4221",对吗,有两种办法
第一种:
你转两遍String str = getDataField(”ff“);
String str1=CanvasMySymbol(str);
CanvasMySymbol(str1);
就能得到你想要的。
第二种:
String str = getDataField(”ff“);
String str1=str.substring(1);
CanvasMySymbol(str1);
得到你要的结果;
[解决办法]
问题解决了就结贴吧,养成结贴的好习惯
[解决办法]
引用:
问题解决了就结贴吧,养成结贴的好习惯

顶一个。结贴!

热点排行