gpt4 book ai didi

java - 在java中传输二进制文件(数据)

转载 作者:行者123 更新时间:2023-11-30 18:26:43 25 4
gpt4 key购买 nike

Possible Duplicate:
Best way to read structured binary files with Java

我曾经是一名C程序员。在c中,如果我想从std io传输二进制数据(不仅仅是文本文件),我可以通过调用 getchar() 来完成。和putchar()一遍又一遍,直到达到 EOF 。我的问题是,在Java中是否可以做同样的事情?我可以打电话readline()writeline()一遍又一遍地?如果没有,我该怎么办?
谢谢!

最佳答案

不,您绝对不应该在 readLine()writeLine() 调用中使用任何内容。这些用于文本数据。如果您要传输二进制数据,则应该使用 InputStreamOutputStream - 不使用 ReaderWriter名字。如果将二进制数据转换为文本,几乎肯定会丢失数据。

但是您可以一次复制数据 block :

public static void copy(InputStream input, OutputStream output)
throws IOException {
byte[] buffer = new byte[16 * 1024]; // For example...
int bytesRead;
while ((bytesRead = input.read(buffer)) > 0) {
output.write(buffer, 0, bytesRead);
}
}

关于java - 在java中传输二进制文件(数据),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14325576/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com