Добрый день есть код
SocketAddress socketAddress = new InetSocketAddress(HOST, PORT);
SocketChannel socketChannel = SocketChannel.open();
socketChannel.connect(socketAddress);
FileChannel fileChannel = new RandomAccessFile(file, "r").getChannel();
fileChannel.transferTo(0, fileChannel.size(), socketChannel);
как я понимаю он для передачи файла. Нужен соотвецтвующий код со стороны получателя. Еще хотел спросить можно таким способом передавать видео, картинки, архивы. Если нет то дайте пожалуйста ссылку на ресурс где об этом можно прочесть.
Сервер принимающий файл:
public class NioServer {
private static final int PORT = 1234;
private static final String FILE_NAME = "image.jpg";
public static void main(String args[]) throws IOException {
try (ServerSocketChannel serverSocketChannel = ServerSocketChannel.open()) {
serverSocketChannel.bind(new InetSocketAddress(PORT));
try (SocketChannel socketChannel = serverSocketChannel.accept()) {
try (FileChannel fileChannel = FileChannel.open(Paths.get(FILE_NAME), StandardOpenOption.CREATE, StandardOpenOption.WRITE)) {
fileChannel.transferFrom(socketChannel, 0, Long.MAX_VALUE);
}
}
}
}
}
Клиент передающий файл:
public class NioClient {
private static final int PORT = 1234;
private static final String HOST = "localhost";
private static final String FILE_NAME = "image.jpg";
public static void main(String args[]) throws IOException {
InetSocketAddress serverAddress = new InetSocketAddress(HOST, PORT);
try (SocketChannel socketChannel = SocketChannel.open(serverAddress)) {
try (FileChannel fileChannel = FileChannel.open(Paths.get(FILE_NAME))) {
fileChannel.transferTo(0, fileChannel.size(), socketChannel);
}
}
}
}
Таким способом можно передавать видео, картинки и архивы.
Апостиль в Лос-Анджелесе без лишних нервов и бумажной волокиты
Основные этапы разработки сайта для стоматологической клиники
Продвижение своими сайтами как стратегия роста и независимости