30/09/2018, 19:07
Lỗi viết dữ liệu kiểu nhị phân vào file trong java
em viết một đoạn code nhập dữ liệu và ghi vào file theo kiểu nhị phân. nhưng chạy đến phần viết file thì báo lỗi. mà em chưa biết lỗi gì? mấy bác xem hộ em cái!
import java.io.DataOutputStream;
import java.io.IOException;
import java.io.FileOutputStream;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.util.Scanner;
/**
*
* @author Minh Ngoc
*/
class sinhvien{
public String ten;
public int namsinh;
public float diemTB;
}
public class DataIn_OutStream {
public static void main(String[] args) throws IOException {
// String a;
sinhvien sv= new sinhvien();
Scanner nhapTT =new Scanner(System.in);
System.out.println("
Nhap vao ten sinh vien:");
sv.ten = nhapTT.nextLine();
System.out.println("
Nhap vao nma sinh:");
sv.namsinh= nhapTT.nextInt();
System.out.println("
Nhap vao diem TB:");
sv.diemTB= nhapTT.nextFloat();
DataOutputStream dataOut;
DataInputStream dataIn;
try{
dataOut = new DataOutputStream(new FileOutputStream("E:\SV.dat"));
}
catch(IOException error){
System.out.println("
Write Error!!!");
}
try{
System.out.println("
Writing name to File.");
dataOut.writeUTF(sv.ten);
System.out.println("
Writing year to File.");
dataOut.writeInt(sv.namsinh);
System.out.println("
Writing diemTB to file.");
dataOut.writeFloat(sv.diemTB);
System.out.println("
Write file succesful!!!");
}
catch(IOException error){
System.out.println("
Write file error:"+ error);
return;
}
dataOut.close();
try{
dataIn = new DataInputStream(new FileInputStream("E:\sv.dat"));
}
catch(IOException error){
System.out.println("
Read file error!");
return;
}
try{
sv.ten = dataIn.readUTF();
System.out.println("
ten sinh vien la:"+ sv.ten);
sv.namsinh= dataIn.readInt();
System.out.println("
Nam sinh vien la:" +sv.namsinh);
sv.diemTB = dataIn.readFloat();
System.out.println("
Diem trung binh cua sinh vien la:" + sv.diemTB);
System.out.println("
Read File Succesful!");
}
catch(IOException error){
System.out.println("
read file error!");
return;
}
dataIn.close();
}
}```
<img src="https://daynhauhoc.com//daynhauhoc.s3-ap-southeast-1.amazonaws.com/original/2X/b/bda20b0b907b5368dd5f5f8e3ce5a82ef637dd19.png" width="690" height="431">
Bài liên quan
Bạn gán tham chiếu 2 stream ở chỗ khai báo
DataOutputStream dataOut
vàDataInputStreamIn dataIn
thànhnull
hết nháP.s: theo mình bạn nên gộp 2 khối try kìa thành 1 cái thôi
thank bạn nhá! mình chăm quá ý mà!
Cái này lỗi nó ghi rõ thế mà ? Bạn tập đọc lỗi đi. Cứ vậy thì chả tiến bộ đâu.
P/s: góp ý của mình không phải bạn bỏ qua cho mình
mình có dịch báo lỗi nhưng không biết là chọt vào đâu.:), vì chưa dính lỗi này bao giờ.