java - 我可以在同一个输出流上同时使用 PrintWriter 和 BufferedOutputStream 吗?

标签 java sockets ssl

我可以在同一个输出流上同时使用 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/

相关文章:

c - 通过套接字接口(interface)接收不同的数据类型

ssl - Mosquitto SSL 证书验证失败

reactjs - React Native 网络请求失败

java - 如何编辑 ionic cordova 插件

java - Swing 单选按钮小程序故障排除

c - 使用 C 套接字将文件从服务器传输到客户端的问题

java - cfhttp : the trustAnchors parameter must be non-empty

java - Http status 404 -/请求的资源不可用

java - 在调用 wait 和 notification 之后,我尝试从主线程加入两个线程

.net - 套接字队列问题?