我正在读取请求正文并将其放入输入流中。虽然我明确说明了解码方法,但我仍然在字符串后得到许多\u0000 (Null)。
InputStream is = exchange.getRequestBody();
byte[] header = new byte[100];
is.read(header);
String s = new String(header, "UTF-8");
如何使用标准 Java 库避免这种情况?我不能使用第三方库。
最佳答案
is.read(header);返回实际读取的字节数。将您的代码更改为
byte[] header = new byte[100];
int n = is.read(header);
String s = new String(header, 0, n, "UTF-8");
关于java - 从 InputStream 读取时如何避免编码 null (\u0000),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13948903/