如何将Java字符串转换为ASCII字节数组?
发布于 2011-04-17 00:52:03
发布于 2012-08-23 15:54:24
String s = "Hello, world!";
byte[] b = s.getBytes(Charsets.US_ASCII);
除了不在源代码中硬编码任意字符集名称之外,它还有一个更大的优势:Charsets.US_ASCII
是Charset
类型(而不是String
),因此您可以避免仅从String.getBytes(String)
抛出检查的UnsupportedEncodingException
,而不是从String.getBytes(Charset)
抛出。
在Java7中,有等效的StandardCharsets
类。
发布于 2011-04-17 02:19:57
您尝试的代码中只有一个字符是错误的:
Charset characterSet = Charset.forName("US-ASCII");
String string = "Wazzup";
byte[] bytes = String.getBytes(characterSet);
^
请注意大写的"String“。这将尝试在string类上调用一个不存在的静态方法。相反,您需要调用string实例上的方法:
byte[] bytes = string.getBytes(characterSet);
https://stackoverflow.com/questions/5688042
复制相似问题