2011-12-23 20 views
4

我在Windows-1251代码表中有字符代码。 如何在UTF-8代码表中获取此字符的代码?Windows-1251到UTF-8代码

,比如我有性格“А”在Windows-1251编码等于192,相应的UTF-8编码等于1040

我怎样才能从Windows-1251代码,代码192初始化字符或字符在Java中表?

char c =(char)192; //如何指定编码?

+1

所有的ASCII字符,包括'A'在窗口-1251,ISO-8859-1和UTF-相同8。它的字符> 127,这是不同的。 –

+0

你有代码点,字符,字符串吗?一些更多的信息会有帮助。 - 如果它是一个字符串,你可以在从流/文件中读取时定义CP-1251编码,在写入流/文件时定义为UTF-8编码。 – Thomas

+1

我最初的任务是检查字符是否有效(可以在字符串中使用)。 Windows-1251代码表中的有效字符代码列表。有效字符可以设置为范围从 - (32-235)。我想比较给定的字符与范围,但给定的字符是UTF-8编码。 – pe4enko

回答

7

要转换一个byte []编码,一个字符编码到另一个你可以做

public static byte[] convertEncoding(byte[] bytes, String from, String to) { 
    return new String(bytes, from).getBytes(to); 
} 
+0

但是,如果将输出'byte []'转换为字符串,则会得到错误的字符串 –