2012-10-18 23 views
2

可能重复:
Converting char array into byte array and back again如何转换的char []为byte []而不会产生任何中间字符串

我在char[]密码,我想这个密码byte[]无创建任何String。请建议最好的方法。

+1

欢迎来到Stack Overflow!我们鼓励你[研究你的问题](http://stackoverflow.com/questions/how-to-ask)。如果你已经[尝试了某些东西](http://whathaveyoutried.com/),请将其添加到问题中 - 如果没有,请先研究并尝试您的问题,然后再回来。 – 2012-10-18 08:31:58

+0

你试过[搜索现有的问题](http://stackoverflow.com/search?tab=relevance&q= [java]%20%2bchar []%20%2bbyte [])? – assylias

+0

你能解释一下为什么你不想要任何'字符串? – 2012-10-18 08:36:31

回答

5

如果您需要ASCII或ISO-8859-1编码,您可以一次复制一个字符。

char[] chars = ... 
byte[] bytes = new byte[chars.length]; 
for(int i = 0; i < chars.length; i++) 
    bytes[i] = (byte) chars[i]; 
0

我不知道任何建立工具来做到这一点。您可能需要创建一个实用程序类来解决您的问题。

public static byte[] charToByte(char[] array) { 

    byte[] result = new byte[array.length]; 

    for(int i = 0; i < array.length; i++) { 
    result[i] = (byte) array[i]; 
) 
} 

这个解决方案如何受限于您正在使用的编码。

相关问题