我可以在同一个输出流上同时使用 PrintWriter 和 BufferedOutputStream 吗?
情况是这样的:
我有一个 SSLSocket 程序,我希望能够在不同的时间点轻松地通过套接字传输字符串和字节 [],而不必将字节 [] 转换为字符串等,但是,PrintWriter 只允许我传输字符串和 BufferedOutputStream 只允许我传输字节。
最佳答案
PrintWriter 只是原始 OutputStream 的包装器。 BufferedOutputStream 也是 OutputStream 的包装器。 所以你可以同时使用两者。为什么不呢?
你应该考虑的一件事 - 你应该小心地在多线程环境中使用流和写入器,因为你可能会得到不可预测的结果。
java.io.Writer 类(PrintWriter 的父类(super class))将自身用作锁定对象。所以您也可以使用它来同步多个线程。
关于java - 我可以在同一个输出流上同时使用 PrintWriter 和 BufferedOutputStream 吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7777439/