Trong lập trình Java, DataOutputStream
là một lớp con của FilterOutputStream
, được sử dụng để ghi các dữ liệu nguyên thủy vào một luồng dữ liệu ra (output stream). DataOutputStream
cung cấp các phương thức để ghi các kiểu dữ liệu nguyên thủy như int
, double
, boolean
, v.v. vào luồng byte.
Mục đích chính của DataOutputStream
là cho phép bạn ghi các kiểu dữ liệu nguyên thủy vào luồng dữ liệu mà không cần phải tự thực hiện việc chuyển đổi các kiểu dữ liệu hoặc xử lý các bytes.
Dưới đây là cú pháp của lớp DataOutputStream
:
java
public class DataOutputStream extends FilterOutputStream implements DataOutput {
// Constructors:
public DataOutputStream(OutputStream out)
// Methods:
public final void write(int b) throws IOException
public final void write(byte[] b, int off, int len) throws IOException
public final void writeBoolean(boolean v) throws IOException
public final void writeByte(int v) throws IOException
public final void writeShort(int v) throws IOException
public final void writeChar(int v) throws IOException
public final void writeInt(int v) throws IOException
public final void writeLong(long v) throws IOException
public final void writeFloat(float v) throws IOException
public final void writeDouble(double v) throws IOException
public final void writeBytes(String s) throws IOException
public final void writeChars(String s) throws IOException
public final void writeUTF(String s) throws IOException
}
Một số phương thức quan trọng của DataOutputStream
:
writeBoolean(boolean v)
: Ghi giá trị boolean vào luồng.writeByte(int v)
: Ghi giá trị byte vào luồng.writeShort(int v)
: Ghi giá trị short vào luồng.writeChar(int v)
: Ghi một ký tự vào luồng.writeInt(int v)
: Ghi giá trị integer vào luồng.writeLong(long v)
: Ghi giá trị long vào luồng.writeFloat(float v)
: Ghi giá trị float vào luồng.writeDouble(double v)
: Ghi giá trị double vào luồng.writeBytes(String s)
: Ghi một chuỗi dưới dạng các byte vào luồng. Mỗi ký tự trong chuỗi sẽ được chuyển đổi thành một byte.writeChars(String s)
: Ghi một chuỗi dưới dạng các ký tự Unicode vào luồng.writeUTF(String s)
: Ghi một chuỗi dưới dạng UTF-8 vào luồng.
Chú ý rằng, để đọc dữ liệu từ DataOutputStream
, bạn phải sử dụng lớp DataInputStream
, vì các phương thức ghi của DataOutputStream
sẽ chuyển đổi dữ liệu thành các dạng byte tương ứng, và DataInputStream
có thể đọc chúng lại thành các kiểu dữ liệu ban đầu.