DataInputStream trong Java
DataInputStream được sử dụng trong ngữ cảnh của DataOutputStream và có thể được sử dụng để đọc các dữ liệu gốc (nguyên thủy) trong Java.
Sau đây là constructor để tạo một InputStream trong Java:
InputStream in = DataInputStream(InputStream in);
Sau khi bạn có đối tượng DataInputStream, thì có một số phương thức có thể được sử dụng để đọc stream đó hoặc để thực hiện các hoạt động khác trên stream đó.
STT | Phương thức và Miêu tả |
---|---|
1 | public final int read(byte[] r, int off, int len)throws IOException
Đọc len byte của dữ liệu từ input stream vào trong một mảng các byte. Trả về tổng số byte đã đọc vào trong buffer, nếu nó là kết thúc file thì trả về -1 |
2 | Public final int read(byte [] b)throws IOException
Đọc một số byte từ inputstream và lưu vào trong mảng byte. Trả về tổng số byte đã đọc vào trong buffer, nếu nó là kết thúc file thì trả về -1 |
3 |
Có các form sau: (a) public final Boolean readBooolean()throws IOException, (b) public final byte readByte()throws IOException, (c) public final short readShort()throws IOException (d) public final Int readInt()throws IOException Các phương thức này sẽ đọc các byte từ InputStream. Trả về hai byte kế tiếp của InputStream dưới dạng kiểu dữ liệu gốc cụ thể |
4 | public String readLine() throws IOException
Đọc dòng tiếp theo của text từ input stream. Nó đọc các byte liên tục, biến đổi mỗi byte một cách riêng rẽ thành một ký tự, tới khi nó gặp line terminator hoặc kết thúc dòng; ký tự được đọc, sau đó, được trả về như là một String |
Ví dụ
Sau đây là ví dụ minh họa DataInputStream và DataOutputStream. Ví dụ này đọc 5 dòng đã cho trong một text.txt và biến đổi các dòng này thành các chữ hoa và cuối cùng sao chép chúng vào trong test1.txt.
import java.io.*; public class Test{ public static void main(String args[])throws IOException{ DataInputStream d = new DataInputStream(new FileInputStream("test.txt")); DataOutputStream out = new DataOutputStream(new FileOutputStream("test1.txt")); String count; while((count = d.readLine()) != null){ String u = count.toUpperCase(); System.out.println(u); out.writeBytes(u + " ,"); } d.close(); out.close(); } }
Nó sẽ cho kết quả sau:
DAY LA TEST 1 , DAY LA TEST 2 , DAY LA TEST 3 , DAY LA TEST 4 , DAY LA TEST 5 ,
Đã có app VietJack trên điện thoại, giải bài tập SGK, SBT Soạn văn, Văn mẫu, Thi online, Bài giảng....miễn phí. Tải ngay ứng dụng trên Android và iOS.
Theo dõi chúng tôi miễn phí trên mạng xã hội facebook và youtube:Các bạn có thể mua thêm khóa học JAVA CORE ONLINE VÀ ỨNG DỤNG cực hay, giúp các bạn vượt qua các dự án trên trường và đi thực tập doanh nghiệp với Java. Khóa học có giá chỉ 400K, nhằm ưu đãi, tạo điều kiện cho sinh viên cho thể mua khóa học.
Nội dung khóa học gồm 16 chuơng và 100 video cực hay, học trực tiếp tại https://www.udemy.com/tu-tin-di-lam-voi-kien-thuc-ve-java-core-toan-tap/ Bạn nào có nhu cầu mua, inbox trực tiếp chị Thu, trợ lý anh Tuyền để hỗ trợ thanh toán qua mã QR ngân hàng Việt Nam, fb: https://www.facebook.com/Thule.59
Anh Tuyền, tác giả khóa học, là cựu sinh viên chương trình đào tạo kĩ sư tài năng của đại học Bách Khoa Hà Nội với hơn 5 năm kinh nghiệm đi làm thực tế doanh nghiệp và cũng là Founder website vietjack.com, web giáo dục phổ biến nhất Việt Nam hiện tại (năm 2024). Java cũng là ngôn ngữ lập trình dễ đi xin việc nhất hiện tại, với mức lương cao, hãy nâng cao kiến thức IT của bản thân mình vì một Việt Nam giàu mạnh.
Loạt bài hướng dẫn của chúng tôi dựa một phần trên nguồn tài liệu của: Tutorialspoint.com
Bài học Java phổ biến tại vietjack.com: