1
我想寫出這樣一個java功能: 如果一個字符是不是在GB2312,返回false如何找到一個字符是否是GB2312在java中
Boolean isGB2312(String chinese) {
......
}
我想寫出這樣一個java功能: 如果一個字符是不是在GB2312,返回false如何找到一個字符是否是GB2312在java中
Boolean isGB2312(String chinese) {
......
}
import java.nio.charset.*;
class Some{
public static void main(String args[])
{
final Charset cs = Charset.forName("GB2312");
final CharsetEncoder encode = cs.newEncoder();
System.out.println(encode.canEncode("ダチヂッツヅテデ"));
}
}
UPDATE: 作爲一個靜態方法:
final static boolean isGB2312(final String s)
{
return java.nio.charset.Charset.forName("GB2312").newEncoder().canEncode(s);
}
我沒有使用Java進行了一段時間,但是我知道Iconv,當有非法字符時可以拋出異常,所以當發生異常時可以返回false,並且在轉換爲UTF-8時沒有問題返回true。