Rumah  >  Artikel  >  Java  >  Bagaimanakah pengaturcaraan rangkaian Java berinteraksi dengan bahasa lain seperti Python?

Bagaimanakah pengaturcaraan rangkaian Java berinteraksi dengan bahasa lain seperti Python?

PHPz
PHPzasal
2024-04-15 17:45:01470semak imbas

Pengaturcaraan rangkaian Java boleh berinteraksi dengan aplikasi yang ditulis dalam bahasa lain, seperti Python. Artikel ini menunjukkan langkah-langkah untuk interaksi antara Java dan Python: Java mencipta pelayan dan mendengar pada port tertentu. Python mencipta klien yang menyambung ke alamat IP dan port pelayan Java. Python menghantar data ke Java, dan Java memproses dan menghantar respons kepada Python.

Bagaimanakah pengaturcaraan rangkaian Java berinteraksi dengan bahasa lain seperti Python?

Java Network Programming Berinteraksi dengan Bahasa Lain

Java Network Programming bukan sahaja boleh berkomunikasi dengan aplikasi Java lain, tetapi juga berinteraksi dengan aplikasi yang ditulis dalam bahasa lain seperti Python. Artikel ini akan menunjukkan cara menggunakan pengaturcaraan rangkaian Java untuk berinteraksi dengan Python dan menyediakan kes praktikal.

1. Cipta pelayan Java

import java.net.ServerSocket;
import java.net.Socket;
import java.io.InputStream;
import java.io.OutputStream;

public class JavaServer {

    public static void main(String[] args) throws Exception {
        // 创建服务端套接字,监听端口 5000
        ServerSocket serverSocket = new ServerSocket(5000);

        // 接受客户端连接,并创建套接字
        Socket socket = serverSocket.accept();

        // 获取输入流和输出流
        InputStream inputStream = socket.getInputStream();
        OutputStream outputStream = socket.getOutputStream();

        // 读取客户端发送的数据
        byte[] buffer = new byte[1024];
        int length = inputStream.read(buffer);
        String message = new String(buffer, 0, length);

        // 处理来自客户端的数据
        // ...

        // 向客户端发送数据
        String response = "已收到来自 Python 客户端的数据";
        outputStream.write(response.getBytes());

        // 关闭套接字和服务端套接字
        socket.close();
        serverSocket.close();
    }
}

2 Buat klien Python

import socket

# 创建客户端套接字,连接到 Java 服务端的 IP 地址和端口
clientSocket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
clientSocket.connect(('127.0.0.1', 5000))

# 发送数据到 Java 服务端
message = "这是来自 Python 客户端的数据"
clientSocket.send(message.encode())

# 接收来自 Java 服务端的数据
response = clientSocket.recv(1024)
print(response.decode())

# 关闭客户端套接字
clientSocket.close()

Kes praktikal: pemindahan fail

Kod berikut menunjukkan kes pemindahan fail menggunakan Java dan

.

Pelayan Java:

// ... 同 JavaServer 代码 ...

// 接收文件内容
byte[] fileContent = new byte[1024];
int totalLength = 0;
while ((length = inputStream.read(fileContent)) != -1) {
    totalLength += length;
}

// ... 同 JavaServer 代码 ...

Pelanggan Python:

# ... 同 PythonClient 代码 ...
with open('test.txt', 'rb') as f:
    fileContent = f.read()
clientSocket.send(fileContent)

# ... 同 PythonClient 代码 ...

Atas ialah kandungan terperinci Bagaimanakah pengaturcaraan rangkaian Java berinteraksi dengan bahasa lain seperti Python?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn