Đối với điện thoại có bộ nhớ thì việc đọc file là rất cần thiết, với lại chức năng này của j2me khiến cho các phần mềm trở nên lý thú hơn và có tính linh hoạt cao hơn. Cũng như một tin nhắn, truy cập đọc và viết file cũng dựa vào kết nối, đó là FileConnection, và dựa và các Stream để đọc hoăc là ghi dữ liệu: Class có sẵn cần
Trong đó path là đường dẫn tới file cần mở kết nối,ví dụ e:/test.txt Sau khi mở kết nối ta cần mở Stream để đọc hoăc là viết lên kết nối file đó, gồm có 2 loại
Và chúng ta sẽ thực hành trên những Stream này để truy xuất hoặc nhập dữ liệu vào file: Để kiểm tra xem một file có tồn tại trên hệ thống kota dùngfc.exists()để kiểm tra, kết quả trả về là đúng hay sai: Vd:
if(fc.exists()){// mở inputStream cho đọc file} else{fc.create(); //tạo file mới, đồng thời mở outputStream để ghi dữ liệu vào file}
sau đây là cách đọc và viếtđến Stream: đối với InputStream, ta sử dụng để đọc dữ liệu file, tacần tạo một buffer là bytearray để đọc Stream, cách làm như sau: đối với Stream có thể xác định kích thước:
int size=is.available(); byte[] bf=new byte[size]; is.read(bf,0,bf.length); //đọc toàn bộ dữ liệu vào byte[]
nếu chưa biết kích thước ta làm như sau:
StringBuffer sb=new StringBuffer(); int i; While((i=is.read())!=-1){ sb.append((char)i);
Sau đó thì chuyển StringBuffer thành chuỗi và thành bytearray như bình thường:
Byte[] bf=sb.toString().getBytes();
Chúng ta sẽ truy xuất trên mảng byte này, đó là toàn bộ dữ liệu file mà ta lấy được. Đối với OutputStream, dung để viết vào file, ta có thể viết mới hoặc viết tiếp, và cũng cần một buffer bytearray chứa dữ liệu để viết vào file, ví dụ:
Vậy là ta đã viết vào file mới dòng chữ"Codej2me.wap.sh"rồi đó. Để viết tiếp vào một file có sẵn, sau khi mở kết nối ta cần xác định kích thước file và viết tiếp từ đó.
long from=fc.fileSize(); OutputStream os=fc.openOutputStream(from);
Và sau đó dung lệnh write(byte[]) như bình thường • Một số lệnh và function với fileconnection fc.delete();//xóa file fc.getName();tên file hoặc folder fc.isDirectory();có phải là thư mục ko fc.list();chuyển về dạng danh sách phân cách đối tượng giống nhau, mỗi đối tường là một tên file hoặc folder fc.mkdir();tạo thư mục mới fc.create();tạo file mới.
Thông tin
Hiện có 1 đang Online, 1 visit trong ngày,2 visit trong tháng. Tổng lượt truy cập là 722 lượt.