如何通过套接字发送文本文件?
How do you send a text file through sockets?
我正在尝试创建一个简单的客户端-服务器 java 程序。很简单,我需要从服务器向客户端发送一个文本文件 (ToSend.txt),它位于 Server.java 所在的同一目录中。 运行程序后,ToSend.txt文件应该在Client.java所在的同一目录下,并且会重命名为Received.txt.
服务器:
File file = new File("ToSend.txt");
try
{
ServerSocket serverSocket = new ServerSocket(1234);
Socket serverEndpoint = serverSocket.accept();
//what to do here?
serverEndpoint.close();
}
catch (Exception e)
{
e.printStackTrace();
}
客户:
try
{
Socket clientEndpoint = new Socket(localhost, 1234);
//what to do here?
clientEndpoint.close();
}
catch (Exception e)
{
e.printStackTrace();
}
ToSend.txt
Self-learning during a global pandemic is difficult.
我不知道我是要使用 DataOutputStream 还是只使用 OutputStream 或 FileReader,我需要帮助。
首先你需要序列化文件然后发送它,你不能只发送一个文件,这个已经回答过,所以我不再重复回答,我只是link回答其他用户提供的问题。
Java sending and receiving file (byte[]) over sockets
尝试查找如何序列化数据的视频 java 有不同的方法,使用像 linked 这样的字节,这是 Java 流教程的一部分,它对于了解流的实际运作方式非常有用。
我正在尝试创建一个简单的客户端-服务器 java 程序。很简单,我需要从服务器向客户端发送一个文本文件 (ToSend.txt),它位于 Server.java 所在的同一目录中。 运行程序后,ToSend.txt文件应该在Client.java所在的同一目录下,并且会重命名为Received.txt.
服务器:
File file = new File("ToSend.txt");
try
{
ServerSocket serverSocket = new ServerSocket(1234);
Socket serverEndpoint = serverSocket.accept();
//what to do here?
serverEndpoint.close();
}
catch (Exception e)
{
e.printStackTrace();
}
客户:
try
{
Socket clientEndpoint = new Socket(localhost, 1234);
//what to do here?
clientEndpoint.close();
}
catch (Exception e)
{
e.printStackTrace();
}
ToSend.txt
Self-learning during a global pandemic is difficult.
我不知道我是要使用 DataOutputStream 还是只使用 OutputStream 或 FileReader,我需要帮助。
首先你需要序列化文件然后发送它,你不能只发送一个文件,这个已经回答过,所以我不再重复回答,我只是link回答其他用户提供的问题。
Java sending and receiving file (byte[]) over sockets
尝试查找如何序列化数据的视频 java 有不同的方法,使用像 linked 这样的字节,这是 Java 流教程的一部分,它对于了解流的实际运作方式非常有用。