java - 如何将自己的文件发送给聊天 friend ?

标签 java sockets

我尝试发送文件给chatFriend,我发送一个sendFileInformation,包括我选择发送到支持我们聊天的服务器的文件,然后再发送文件。然后服务器将其发送给chatFriend,当chatFriend收到它时,他会打开一个新的文件ServerSocket并响应我,然后发送文件,聊天 friend 保存文件。传输时,他可以放弃。 同时,如果另一个人也想通过他打开的ServerSocket向他发送文件,他也可以保存该文件。 如何让它成为现实? 如果有人同时向我发送文件,我可以使用相同的端口新建一个 ServerScoket 吗? 发送文件时使用哪个Stream,如果我使用DataoutputStream和DateInputStream但接收到的文件不正确,会出现什么问题? 能给我一些例子吗?谢谢。

最佳答案

希望我理解你的问题...

不,您不能将同一端口用于 2 个(或更多)同时连接(无论如何对于 TCP)。

请查看“线程”。您正在尝试构建一个多线程服务器。

每个文件传输都应该发生在不同的端口上。所以每个FileTransfer都应该有自己的ServerSocket。

关于java - 如何将自己的文件发送给聊天 friend ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3278365/

相关文章:

node.js - 跨服务器的 NodeJS 匹配

c - 检测客户端断开连接

java - 访问类型为 java.util.ArrayList 的 json 中的所有键

Java Scanner 用于在不前进位置的情况下窥视某些东西(int、double、line 等)

java - 扫描仪抛出 FileNotFoundException 但使用 bufferedreader 和 inputstream 不会?

sockets - 套接字 : constantly getting POLLHUP on half-close

c++ - 使用套接字一次发送整个数据

c - 文件传输程序中的 send() 和 sendto() 阻塞

java - 将 Web 应用程序部署到 Apache Tomcat 的最简单方法

java - A[j] = 2∗A[i] in list with better than O(n^2) runtime