Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/sockets/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/dart/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sockets 如何在Dart中通过套接字发送文件_Sockets_Dart_Flutter - Fatal编程技术网

Sockets 如何在Dart中通过套接字发送文件

Sockets 如何在Dart中通过套接字发送文件,sockets,dart,flutter,Sockets,Dart,Flutter,我正在尝试通过套接字发送一个二进制文件,如图像或pdf。 我尝试过以下方法: file.readAsBytesSync().forEach((f) { socket.write(f); }); 及 但我收到的是整数列表,而不是二进制文件。 下面给出的JAVA代码工作正常,接收端口以正确的格式获取文件 DataOutputStream dos = new DataOutputStream(s.getOutputStream()); FileInputStream fis =

我正在尝试通过套接字发送一个二进制文件,如图像或pdf。 我尝试过以下方法:

   file.readAsBytesSync().forEach((f) {
     socket.write(f);
   });

但我收到的是整数列表,而不是二进制文件。 下面给出的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");

兄弟,你能告诉我你是如何以套接字客户端的身份收到这个文件的吗?对不起,离题题问题很有魅力,谢谢:)
Socket s = await Socket.connect(host, port);
await s.addStream(file.openRead());
print("ok: data written");