一个的OutputStream 类是面向字节的,而作家 类是面向字符的。我们可以使用一个OutputStream类转换为Writer类OutputStreamWriter 类和传递的参数ByteArrayOutputStream 对象OutputStreamWriter 构造。一个OutputStreamWriter 是从字符流以字节流的桥梁,写入到它的字符被编码成使用指定的charset字节。
public class OutputStreamWriter extends Writer
import java.io.*; public class OutputStreamToWriterTest { public static void main(String[] args) throws Exception { String str = "nhooo"; ByteArrayOutputStream baos = new ByteArrayOutputStream(); OutputStreamWriter osw = new OutputStreamWriter(baos); for (int i=0; i < str.length(); i++) { osw.write((int) str.charAt(i)); } osw.close(); byte[] b = baos.toByteArray(); for (int j=0; j < b.length; j++) { System.out.println(b[j]); } } }
输出结果
84 85 84 79 82 73 65 76 83 80 79 73 78 84