Java 8 字节数组转 InputStreamReader:示例与解析
要将字节数组转换为 InputStreamReader,可以使用 Java 8 中的 StandardCharsets 类的实例来指定字符集,然后使用 ByteArrayInputStream 包装字节数组,并将其传递给 InputStreamReader 的构造函数。以下是示例代码:
import java.io.ByteArrayInputStream;
import java.io.InputStreamReader;
import java.nio.charset.StandardCharsets;
public class Main {
public static void main(String[] args) {
byte[] bytes = {97, 98, 99}; // 示例字节数组
ByteArrayInputStream byteArrayInputStream = new ByteArrayInputStream(bytes);
InputStreamReader inputStreamReader = new InputStreamReader(byteArrayInputStream, StandardCharsets.UTF_8);
// 接下来可以使用 InputStreamReader 读取字节流并将其转换为字符流
// 例如,可以使用 InputStreamReader 的 read() 方法逐个读取字符
try {
int c;
while ((c = inputStreamReader.read()) != -1) {
char character = (char) c;
System.out.print(character);
}
} catch (Exception e) {
e.printStackTrace();
}
}
}
在上述示例代码中,我们将字节数组{97, 98, 99}转换为 InputStreamReader,并使用 UTF-8 字符集进行解码。然后,我们使用 InputStreamReader 的 read() 方法逐个读取字符,并将其打印到控制台上。在本例中,输出将为'abc'。
原文地址: https://www.cveoy.top/t/topic/p8P7 著作权归作者所有。请勿转载和采集!