VietTuts

Tự Học Lập Trình Online

  • Home
  • Java
  • Servlet
  • JSP
  • Struts2
  • Hibernate
  • Spring
  • MyBatis
  • Java WS
  • C
  • C++
  • C#
  • Python
  • PHP
  • Excel
  • VBA
  • Web
    • JavaScript
    • JQUERY
    • JSON
    • AJAX
    • CSS
    • HTML
    • HTML5
    • Node.js
    • Angular 7
  • SQL
    • MySQL
    • SQL Server
  • Misc
    • Eclipse
    • Phần mềm tiện ích
    • Cấu trúc DL&GT
    • Selenium Test
Java Cơ Bản Các Khái Niệm Java OOPs Java String Xử Lý Ngoại Lệ Các Lớp Lồng Nhau Đa Luồng (Multithreading)

Java I/O

Java Input/Output Đọc ghi file trong java Lớp Console Lớp FilePermission Ghi file trong java với lớp FileOutputStream Đọc file trong java với lớp FileInputStream Ghi file trong java với lớp BufferedOutputStream Đọc file trong java với lớp BufferedInputStream Đọc file trong java với lớp SequenceInputStream Ghi file trong java với lớp ByteArrayOutputStream Đọc file trong java với lớp ByteArrayInputStream Ghi file trong java với lớp DataOutputStream Đọc file trong java với lớp DataInputStream Ghi file trong java với lớp FileWriter Đọc file trong java với lớp FileReader Ghi file trong java với lớp FilteroutputStream Đọc file trong java với lớp FilterInputStream Ghi file trong java với lớp BufferedWriter Đọc file trong java với lớp BufferedReader Đọc file trong java với lớp CharArrayReader Ghi file trong java với lớp CharArrayWriter Ghi file trong java với lớp PrintStream Ghi file trong java với lớp PrintWriter Lớp PushbackInputStream trong java Lớp PushbackReader trong java Ghi file trong java với lớp StringWriter Đọc file trong java với lớp StringReader

Java Serialization

Serialization trong java Lớp ObjectOutputStream Lớp ObjectInputStream Từ khóa transient trong java
Ví Dụ Java I/O Java AWT Java Swing Lập Trình Mạng Với Java Java Date Chuyển Đối Kiểu Dữ Liệu Java Collections Java JDBC Các Tính Năng Mới Trong Java Bài Tập Java Có Lời Giải Câu Hỏi Phỏng Vấn Java
1 / 3
❮ ❯

Đọc file trong java với lớp SequenceInputStream


Đọc ghi file trong java
Ghi file trong java với lớp ByteArrayOutputStream

Lớp SequenceInputStream trong java được sử dụng để đọc dữ liệu từ nhiều stream. Nó đọc dữ liệu tuần tự (từng cái một).

Khai báo của lớp SequenceInputStream

Dưới đây là khi báo của lớp Java.io.SequenceInputStream:

public class SequenceInputStream extends InputStream

Nội dung chính

  • Các constructor của lớp SequenceInputStream
  • Các phương thức của lớp SequenceInputStream
  • Ví dụ về đọc file trong java với lớp SequenceInputStream
  • Ví dụ về đọc dữ liệu của 2 file và ghi vào một file khác
  • Ví dụ về lớp SequenceInputStream đọc dữ liệu sử dụng Enumeration

Các constructor của lớp SequenceInputStream

Constructor Mô tả
SequenceInputStream(InputStream s1, InputStream s2) Tạo ra một input stream mới bằng cách đọc dữ liệu của hai input stream theo thứ tự, đầu tiên s1 và sau đó s2.
SequenceInputStream(Enumeration e) Tạo ra một input stream mới bằng cách đọc dữ liệu của một Enumeration mà kiểu của nó là InputStream.

Các phương thức của lớp SequenceInputStream

Phương thức Mô tả
int read() Nó được sử dụng để đọc byte tiếp theo của dữ liệu từ input stream.
int read(byte[] ary, int off, int len) Nó được sử dụng để đọc len byte dữ liệu từ dòng đầu vào vào mảng các byte tử vị trí off.
int available() Nó được sử dụng để trả lại số byte tối đa có thể được đọc từ một input stream.
void close() Nó được sử dụng để đóng input stream.

Ví dụ về đọc file trong java với lớp SequenceInputStream

Trong ví dụ này, chúng ta in dữ liệu của hai file testin.txt và testout.txt.

Giả sử các file testin.txt và testout.txt có nội dung như sau:

File: testin.txt

Welcome to Java IO.

File: testout.txt

It is the example of SequenceInputStream.

File: SequenceInputStreamExample.java

import java.io.FileInputStream;
import java.io.IOException;
import java.io.SequenceInputStream;

public class SequenceInputStreamExample {
    public static void main(String args[]) throws Exception {
        FileInputStream input1 = null;
        FileInputStream input2 = null;
        SequenceInputStream inst = null;
        try {
            input1 = new FileInputStream("D:\\testin.txt");
            input2 = new FileInputStream("D:\\testout.txt");
            inst = new SequenceInputStream(input1, input2);
            int j;
            while ((j = inst.read()) != -1) {
                System.out.print((char) j);
            }
        } catch (IOException ex) {

        } finally {
            inst.close();
            input1.close();
            input2.close();
        }
    }
}

Output của chương trình trên:

Welcome to Java IO.It is the example of SequenceInputStream.

Ví dụ về đọc dữ liệu của 2 file và ghi vào một file khác

Trong ví dụ này, chúng ta đọc dữ liệu của từ 2 file testin.txt và testout.txt sau đó ghi dữ liệu vào file có tên là testout2.txt.

import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.SequenceInputStream;

public class SequenceInputStreamExample2 {
    public static void main(String args[]) throws IOException {
        FileInputStream fin1 = new FileInputStream("D:\\testin.txt");
        FileInputStream fin2 = new FileInputStream("D:\\testout.txt");
        FileOutputStream fout = new FileOutputStream("D:\\testout2.txt");
        SequenceInputStream sis = new SequenceInputStream(fin1, fin2);
        int i;
        while ((i = sis.read()) != -1) {
            fout.write(i);
        }
        sis.close();
        fout.close();
        fin1.close();
        fin2.close();
        System.out.println("Success..");
    }
}

Output:

Succeess...

Nội dung của file output testout2.txt

Welcome to Java IO.It is the example of SequenceInputStream.

Ví dụ về lớp SequenceInputStream đọc dữ liệu sử dụng Enumeration

Nếu chúng ta cần đọc dữ liệu từ nhiều hơn hai file, chúng ta cần sử dụng Enumeration. Có thể gọi ra thể hiện cuar đối tượng Enumeration bằng cách gọi phương thức elements() của lớp Vector. Trong ví dụ dưới đây chúng ta đọc dữ liệu từ 4 file: a.txt, b.txt, c.txt và d.txt.

File:

import java.io.FileInputStream;
import java.io.IOException;
import java.io.SequenceInputStream;
import java.util.Enumeration;
import java.util.Vector;

public class SequenceInputStreamExample3 {
    public static void main(String args[]) throws IOException {
        // tạo các đối tượng FileInputStream cho tất cả các file
        FileInputStream fin1 = new FileInputStream("D:\\a.txt");
        FileInputStream fin2 = new FileInputStream("D:\\b.txt");
        FileInputStream fin3 = new FileInputStream("D:\\c.txt");
        FileInputStream fin4 = new FileInputStream("D:\\d.txt");
        // Tạo đối tượng Vector để lưu các stram
        Vector<FileInputStream> v = new Vector<FileInputStream>();
        v.add(fin1);
        v.add(fin2);
        v.add(fin3);
        v.add(fin4);
        // Tạo đối Enumeration bởi việc gọi phương thức elements
        Enumeration<FileInputStream> e = v.elements();
        // Truyền đối tượng Enumeration tới constructor
        SequenceInputStream bin = new SequenceInputStream(e);
        int i = 0;
        while ((i = bin.read()) != -1) {
            System.out.print((char) i);
        }
        bin.close();
        fin1.close();
        fin2.close();
        fin3.close();
        fin4.close();
    }
}

Các file a.txt, b.txt, c.txt và d.txt có nội dung như dưới đây:

File: a.txt

Welcome

File: b.txt

to

File: c.txt

java

File: d.txt

programming

Output:

Welcometojavaprogramming
Bài tiếp theo: Ghi file trong java với lớp ByteArrayOutputStream

Đọc ghi file trong java
Ghi file trong java với lớp ByteArrayOutputStream

Recent Updates

Xuất dữ liệu ra màn hình console trong JavaCài đặt môi trường JavaJava Swing - Bài tập quản lý sinh viên trong javaLinkedList trong javaArrayList trong javaBài tập java có lời giảiXác thực dữ liệu (Data Validation) trong ExcelGiới thiệu các hàm có sẵn trong ExcelSheet Options trong ExcelHướng dẫn lập trình Python với PyCharm Community EditionHướng dẫn lập trình Python với Visual Studio CodeGiới thiệu CSS3Sắp Tết 2026 Rồi! - Còn bao nhiêu ngày nữa là đến tết 2026?

VietTuts on facebook

Học Lập Trình Online Miễn Phí - VietTuts.Vn
Danh Sách Bài Học

Học Java | Hibernate | Spring
Học Excel | Excel VBA
Học Servlet | JSP | Struts2
Học C | C++ | C#
Học Python
Học SQL

Bài Tập Có Lời Giải

Bài tập Java
Bài tập C
Bài tập C++
Bài tập C#
Bài tập Python
Ví dụ Excel VBA

Câu Hỏi Phỏng Vấn

201 câu hỏi phỏng vấn java
25 câu hỏi phỏng vấn servlet
75 câu hỏi phỏng vấn jsp
52 câu hỏi phỏng vấn Hibernate
70 câu hỏi phỏng vấn Spring
57 câu hỏi phỏng vấn SQL

Scroll back to top

Copyright © 2016 VietTuts.Vn all rights reserved. | Liên hệ | Chính sách - riêng tư | sitemap.html | sitemap_index.xml