今天用做的东西要用Flex调用Webserice.没想到出来的中文全是乱码.
于是上网找资料.结果没有找到flex+webservice的,其他的如flex+rometeobject等等的倒是有。但是很多最终也没有说出合适的解决办法。很多人说要把encoding="utf-8"改成GBK、GB2312等等,但是都不奏效,相反原来直接写在component上的中文却成的乱码。于是我觉得,问题不是出在客户端,应该是服务端。于是我想起以前一些解决java中文乱码的问题。用经典的转换方法:
// 这是一个将西欧字符转换为gb2312字符的转换方法
public   static  final String getGBString(String src) 
    
try {
        
return new String(src.getBytes("ISO-8859-1"), "gb2312");
    }
 catch (java.io.UnsupportedEncodingException e) {
        
return null;
    }

}

在webservice的java类里面的所有中文返回以前都用这个函数转换一下。
OK,问题解决了。
但是并没有完全解决,因为你在所有返回中文的函数里都要有这个方法。
我不知道Webservice的引擎有没有类是Servlet的Filter的东西。以前在解决网页上中文乱码的时候只要写一个Filter类在转换就行了。