我正在尝试通过套接字发送二进制文件,如图像或 pdf。我试过以下:
file.readAsBytesSync().forEach((f) {
socket.write(f);
});
和
socket.write(file.readAsBytesSync());
但是我收到一个整数列表而不是一个二进制文件。下面给出的 JAVA 代码工作正常,接收端口以正确的格式获取文件
DataOutputStream dos = new DataOutputStream(s.getOutputStream());
FileInputStream fis = new FileInputStream(file);
byte[] buffer = new byte[4096];
while (fis.read(buffer) > 0) {
dos.write(buffer);
}
fis.close();
dos.close();
我想弄清楚什么是 Dart 相当于上面的 java 代码。
提前致谢。
正确代码:
Socket s = await Socket.connect(host, port);
await s.addStream(file.openRead());
print("ok: data written");
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句