日期:2014-05-18  浏览次数:20693 次

SmartUpload在linux下向oracle中插入中文是乱码
在网上看了不少的资料,好象都不行。有人说重新改一下SmartUpload.java中的upload()方法,加了一个String   charsetName.
但是在调用的时候,这个charsetName应该设为多少?
还有没有别的解决方案?

------解决方案--------------------
一般来说charset设置为UTF-8几乎是万能的,不过我没用过,仅供参考
------解决方案--------------------
我用过,里面的确有一个这样的函数我给你看看啊,你试试啊,


public static String toUtf8String(String s) {
StringBuffer sb = new StringBuffer();
for (int i=0;i <s.length();i++) {
char c = s.charAt(i);
if (c > = 0 && c <= 255) {
sb.append(c);
} else {
byte[] b;
try {
b = Character.toString(c).getBytes( "utf-8 ");
} catch (Exception ex) {
System.out.println(ex);
b = new byte[0];
}
for (int j = 0; j < b.length; j++) {
int k = b[j];
if (k < 0) k += 256;
sb.append( "% " + Integer.toHexString(k).
toUpperCase());
}
}
}
return sb.toString();
}