Привет! Для отправки файла на другой компьютер в Java можно использовать протоколы TCP или UDP. Вот пример класса, который использует протокол TCP для отправки файла:
```java
import java.io.*;
import java.net.Socket;
public class FileSender {
private static final int BUFFER_SIZE = 4096;
public void sendFile(String filePath, String host, int port) {
try (Socket socket = new Socket(host, port);
FileInputStream fis = new FileInputStream(filePath);
OutputStream os = socket.getOutputStream()) {
File file = new File(filePath);
byte[] buffer = new byte[BUFFER_SIZE];
int bytesRead;
// Отправка имени файла
DataOutputStream dos = new DataOutputStream(os);
dos.writeUTF(file.getName());
// Отправка содержимого файла
while ((bytesRead = fis.read(buffer)) != -1) {
os.write(buffer, 0, bytesRead);
}
System.out.println("Файл отправлен");
} catch (IOException e) {
e.printStackTrace();
}
}
}
```
Теперь можно создать объект класса `FileSender` и вызвать метод `sendFile` для отправки файла:
```java
public class Main {
public static void main(String[] args) {
String filePath = "путь_к_файлу";
String host = "адрес_получателя";
int port = порт_получателя;
FileSender fileSender = new FileSender();
fileSender.sendFile(filePath, host, port);
}
}
```
При использовании данного кода нужно указать путь к отправляемому файлу, адрес получателя и порт, на котором будет прослушиваться соединение на получателе.