【问题标题】:Java - Transferring BufferedImage through TCP SocketJava - 通过 TCP Socket 传输 BufferedImage
【发布时间】:2012-01-09 17:36:43
【问题描述】:

我的Java不是很好,我需要通过TCP套接字发送一个BufferedImage。我已经设法建立连接(并发送字符串),但我真的不知道应该使用哪个 Writer 来发送和恢复 BufferedImage。

【问题讨论】:

标签: java sockets tcp bufferedimage


【解决方案1】:

您应该ImageIO.write 使用某种格式(PNG、JPG 等)将图像序列化为字节流。

然后您应该通过线路发送字节流。这里的困难是你不知道前面流的大小。简单的解决方案是将所有内容保存到内存字节数组中(使用 ByteArrayOutputStream )然后发送。或者如果它不适合内存,你应该做一些聪明的事情(将它保存到临时文件中,或者使用一些分块协议或发送唯一的终止标记)。

【讨论】:

【解决方案2】:

查看ImageIO class,其中包含reading 的方法以及将BufferedImages 和RenderedImages 写入/从各种输入/输出流中写入。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2011-10-24
    • 1970-01-01
    • 1970-01-01
    • 2012-02-07
    • 1970-01-01
    • 2016-03-27
    • 2023-03-08
    • 2015-05-24
    相关资源
    最近更新 更多