java - 文件传输后保留文件名

标签 java sockets file-transfer

我目前正在通过java上的套接字进行p2p文件传输,并且我已经设法将源文件(图像、pdf、txt等)发送到本地主机上的其他目录。但我的问题是,是否有任何方法可以在传输后保持副本的文件名与原始文件名相同,而无需硬编码(我使用参数行来获取源文件路径,分配要连接的端口,目标连接的IP,以及输出路径)

最佳答案

您必须通过套接字连接发送它。 我看到两个解决方案:

第一个解决方案:通过新连接发送它。

  • 打开连接,发送文件名,然后关闭。
  • 打开连接,发送文件数据,关闭连接。
  • 使用收到的名称和数据保存文件。

第二种解决方案:通过同一连接发送名称。

  • 打开连接,发送带有特殊最后字节的文件名。在客户端读取字节,直到找到特殊字节。
  • 仍然在客户端继续读取字节并将其保存到新文件中。

关于java - 文件传输后保留文件名,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17726080/

相关文章:

java - 可以使用 OpsCenter 但不能使用 DevCenter 或通过 Java 连接到 Cassandra 集群

java - 音频转换的质量问题

java - 如何使用 Camel 创建数据源?

sockets - 我在 Windows Server 2003 中可以拥有的打开套接字数的上限是多少

http - 比较用于传输文件的 HTTP 和 FTP

java - 将 hamcrest 匹配器与原始类型数组一起使用

java - 一个 java UDP 套接字可以处理多少个请求?

不支持 C++ 绑定(bind) UDP 套接字地址系列

java - 使用 Java 套接字发送文件,丢失数据

java - TCP 文件传输问题