我正在使用普通的 Java 套接字编程来成功传输已知文件。这是我的代码片段:
Socket sock = new Socket("192.168.1.3", 6789);
byte[] mybytearray = new byte[9999];
InputStream is = sock.getInputStream();
FileOutputStream fos = new FileOutputStream("filename.txt");
BufferedOutputStream bos = new BufferedOutputStream(fos);
int bytesRead = is.read(mybytearray, 0, mybytearray.length);
bos.write(mybytearray, 0, bytesRead);
bos.close();
sock.close();
但是,在这段代码中,我必须将接收文件明确命名为 filename.txt
,我想保留正在传输的文件的名称。一种方法是显式传输文件名,然后传输文件(我认为这是正确的)或者还有其他方法吗?
最佳答案
套接字没有文件名。您可以从套接字读取字节,它们可以是任何内容。
关于java - 保留传输文件的名称,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9097716/