pacman, rainbows, and roller s
Cộng đồng Java Việt
Cộng đồng java Việt
Thông báo
Chú ý: Sắp tới ADM sẽ cải tiến lại wap, xây dựng thêm mục C, C ++ cho các bạn, các bạn có ý kiến gì thì góp ý cho AD nhá :D
Codej2me xin gửi lời cảm ơn đến: Holyeyed, Java_Editor!, chuonghugo,TVC97, thaian2009, gió(opakul), ironman..., và đặc biệt là forum j2mevn đã giúp Codej2me xây dựng wapsite này!!!
Có nhiều bạn chưa hiểu kĩ về Canvas nha, muốn chạy 1 app nào đó có Canvas thì phải Có Midlet nhá, tìm hiểu tại đây
Chatbox




[LT] Truy, Xuất File với InputStream và OutputStream
Đố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
import:
javax.microedition.io.file.*;

javax.microedition.io.*;
và java.io.*;
//dung để truy xuất stream
Mở một kết nối file:
FileConnection fc=(FileConnection) Connector.open(file:/// path);

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
Stream: InputStream( đọc file), OutputStream (tạo file mới):
InputStream is=fc.openInputStream();
OutputStream ob=fc.openOutputStream();

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ụ:
String name="codej2me.wap.sh";
byte[] bf=name.getBytes();
os.write(bf,0,bf.length);

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.
Liên Hệ - Hổ Trợ
Info Author Admin: Q.Phiên
Phone Author Phone: 01635514395
Hosting By XTGEM.COM
CodeJ2ME© 2014-2015