Rumah  >  Artikel  >  Java  >  Bagaimana untuk melaksanakan penghantaran fail dan aliran dalam pengaturcaraan rangkaian Java?

Bagaimana untuk melaksanakan penghantaran fail dan aliran dalam pengaturcaraan rangkaian Java?

王林
王林asal
2024-04-15 10:39:02940semak imbas

Dalam pengaturcaraan rangkaian Java, penghantaran fail boleh dilaksanakan menggunakan kelas FileInputStream/FileOutputStream, dan penghantaran strim menggunakan kelas InputStream/OutputStream. Langkah-langkah khusus adalah seperti berikut: Gunakan FileInputStream untuk membaca bait daripada fail dan menulisnya ke FileOutputStream untuk mencapai pemindahan fail pelayan menggunakan ServerSocket untuk mewujudkan sambungan, FileInputStream membaca fail video dan menulisnya ke OutputStream untuk penghantaran kepada klien; pelanggan menggunakan Socket untuk menyambung ke pelayan InputStream membaca strim video dan menulisnya ke FileOutputStream untuk disimpan sebagai fail setempat.

Bagaimana untuk melaksanakan penghantaran fail dan aliran dalam pengaturcaraan rangkaian Java?

Pengaturcaraan Rangkaian Java: Pemindahan Fail dan Strim

Pengenalan

Dalam pengaturcaraan rangkaian Java, memindahkan fail dan strim adalah tugas biasa. Ia boleh digunakan untuk berkongsi fail, strim video atau jenis data binari lain. Artikel ini menerangkan cara melaksanakan pemindahan fail dan strim menggunakan Java.

Pemindahan Fail

Untuk memindahkan fail, anda boleh menggunakan kelas FileInputStream dan FileOutputStream Java. Berikut ialah contoh mudah: FileInputStreamFileOutputStream 类。下面是一个简单示例:

try (FileInputStream fis = new FileInputStream("file.txt");
     FileOutputStream fos = new FileOutputStream("output.txt")) {
    byte[] buffer = new byte[1024];
    int read;

    while ((read = fis.read(buffer)) > 0) {
        fos.write(buffer, 0, read);
    }
} catch (IOException e) {
    e.printStackTrace();
}

此代码首先从 file.txt 读取字节并将其写入 output.txt

流传输

要传输流,可以使用 Java 的 InputStreamOutputStream 类。下面是一个示例,演示如何从服务器传输视频流到客户端:

服务器端:

try (ServerSocket serverSocket = new ServerSocket(8080);
     Socket clientSocket = serverSocket.accept();
     FileInputStream videoFile = new FileInputStream("video.mp4")) {

    OutputStream out = clientSocket.getOutputStream();

    byte[] buffer = new byte[1024];
    int read;

    while ((read = videoFile.read(buffer)) > 0) {
        out.write(buffer, 0, read);
    }
} catch (IOException e) {
    e.printStackTrace();
}

客户端端:

try (Socket clientSocket = new Socket("127.0.0.1", 8080);
     InputStream in = clientSocket.getInputStream();
     FileOutputStream videoFile = new FileOutputStream("downloaded.mp4")) {

    byte[] buffer = new byte[1024];
    int read;

    while ((read = in.read(buffer)) > 0) {
        videoFile.write(buffer, 0, read);
    }
} catch (IOException e) {
    e.printStackTrace();
}

结论

通过使用 FileInputStream/FileOutputStreamInputStream/OutputStreamrrreee

Kod ini bermula dengan membaca bait daripada file.txt dan menulisnya ke output.txt. 🎜🎜🎜Streaming🎜🎜🎜Untuk menghantar strim, anda boleh menggunakan kelas InputStream dan OutputStream Java. Berikut ialah contoh yang menunjukkan cara untuk menstrim video dari pelayan ke pelanggan: 🎜🎜🎜Sisi pelayan: 🎜🎜rrreee🎜🎜Sisi pelanggan: 🎜🎜rrreee🎜🎜Kesimpulan🎜🎜🎜Dengan menggunakan amleStream/FixedStream Kelas InputStream/OutputStream, pengaturcara Java boleh melaksanakan penghantaran fail dan strim dengan mudah. Keupayaan ini penting untuk membina pelbagai aplikasi web. 🎜

Atas ialah kandungan terperinci Bagaimana untuk melaksanakan penghantaran fail dan aliran dalam pengaturcaraan rangkaian Java?. 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