繁体   English   中英

Java和Unicode麻烦

[英]Java and Unicode trouble

我有一个Java程序,该程序可从SQL-Server DB中获取行并将同一行插入Informix DB中。 Informix DB仅支持8859-1字符集。 有时,用户通过从Word或Excel复制和粘贴在SQL Server数据库中插入一行,这导致某些字符最终以Unicode字符的形式出现(某些字符为3字节)。

我该如何编写一个过滤器函数,以Unicode字符替换为“'”? 或者是其他东西 ?

/吉米

您可以将所有非ASCII字符替换为?

StringBuilder buf = new StringBuilder();
for (char ch : originalString.toCharArray()) {
    if (ch > 127) {
        buf.append('?');
    } else {
        buf.append(ch);
    }
}
return buf.toString();

另一种方法是使用正则表达式:

originalString.replaceAll("\\P{ASCII}", "?")

它将所有非ASCII字符替换为?

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM