1. Trang chủ
  2. » Luận Văn - Báo Cáo

BÀI TẬP LỚN LẬP TRÌNH JAVA

27 1,2K 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 27
Dung lượng 182,5 KB

Nội dung

Giới thiệu về vào/ra tệp text và binary trong Java  Các dữ liệu mà một chương trình ngôn ngữ Java sử dụng phải lấy từ rất nhiều loại nguồn dữ liệu khác nhau, bao gồm cả cơ sở dữ liệu,

Trang 1

BÀI TẬP LỚN

Trang 2

Nội Dung Chính

 Giới thiệu về vào/ra tệp (text và binary)

 Khái niệm luồng

 Luồng byte (Byte Streams)

 Luồng ký tự (Character Streams)

 Những luồng được định nghĩa trước

 Vào ra tệp dùng luồng byte

Vào ra tệp dùng luồng ký tự

Trang 3

Giới thiệu về vào/ra tệp (text và

binary) trong Java

 Các dữ liệu mà một chương trình ngôn ngữ Java sử

dụng phải lấy từ rất nhiều loại nguồn dữ liệu khác nhau, bao gồm cả cơ sở dữ liệu, chuyển giao byte trực tiếp

qua một ổ cắm (socket) và các tệp tin

 Ngôn ngữ Java sẽ mang lại cho bạn rất nhiều công cụ

để bạn có thể nhận được các thông tin từ các nguồn bên ngoài Các công cụ này phần lớn nằm trong gói java.io

Trang 4

Giới thiệu về vào/ra tệp (text và

binary) trong Java

 Trong tất cả các nguồn dữ liệu sẵn có, các tệp tin là phổ biến nhất và thường thuận tiện nhất Việc hiểu biết cách

sử dụng các API có sẵn của ngôn ngữ Java để tương tác với các tệp tin là một kỹ năng cơ bản của lập trình viên

 Nhìn chung, ngôn ngữ Java cung cấp cho bạn một lớp bao gói (File) cho kiểu tệp tin trong hệ điều hành của

bạn Để đọc tệp tin đó, bạn phải sử dụng các luồng

(streams) phân tích cú pháp các byte đầu vào thành các kiểu của ngôn ngữ Java

Trang 5

Giới thiệu về vào/ra tệp (text và

binary) trong Java

 Xử lý files là một phần của công việc xử lý các

luồng, giúp cho một chương trình có thể đọc, ghi dữ

liệu trong bộ nhớ, trên files và trao đổi dữ liệu thông

qua các kết nối trên mạng

Trang 6

Luồng (Streams)

 Tất cả những hoạt động nhập/xuất dữ liệu đều được

quy về một khái niệm gọi là luồng (stream) Luồng

là nơi có thể “sản xuất” và “tiêu thụ” thông tin

 Luồng thường được hệ thống xuất nhập trong Java gắn kết với một thiết bị vật lý

 Tất cả các luồng đều có chung một nguyên tắc hoạt động ngay cả khi chúng được gắn kết với các thiết bị vật lý khác nhau Vì vậy cùng một lớp, phương thức xuất nhập có thể dùng chung cho các thiết bị vật lý khác nhau

Trang 7

InputStream định nghĩa những đặc điểm chung

cho những luồng nhập byte OutputStream mô tả

cách xử lý của các luồng xuất byte

Luồng (Streams)

Trang 8

 Luồng ký tự (Character Streams)

 Các luồng ký tự được định nghĩa dùng hai lớp phân

cấp Mức trên cùng là hai lớp trừu tượng Reader và

Writer.

Lớp Reader dùng cho việc nhập dữ liệu của luồng, lớp

Writer dùng cho việc xuất dữ liệu của luồng.

Luồng (Streams)

Trang 9

 Gói java.lang định nghĩa lớp System, có ba biến luồng được định nghĩa trước là in, out và err, các biến này là các fields được khai báo static trong lớp System.

Luồng (Streams)

Trang 10

 Những luồng được định nghĩa trước (cont)

 System.out: luồng xuất chuẩn, mặc định là console System.out là một đối tượng kiểu PrintStream

 System.in: luồng nhập chuẩn, mặc định là bàn phím System.in là một đối tượng kiểu InputStream

 System.err: luồng lỗi chuẩn, mặc định cũng là console System.err cũng là một đối tượng kiểu PrintStream giống System.out

Luồng (Streams)

Trang 11

Vào ra tệp

Hai lớp InputStream và OutputStream là siêu lớp

đối với tất các các lớp luồng xuất nhập kiểu byte

 Những phương thức trong hai lớp này là tập tối tiểu các chức năng nhập xuất mà những luồng nhập xuất kiểu byte có thể sử dụng

Trang 12

 Vào ra tệp văn bản

 Đọc dữ liệu từ tệp:

Mở tệp: tạo đối tượng lớp FileInputStream gắn với tệp

cần mở

Đọc dữ liệu: dùng phương thức read() trên

FileInputStream, phương thức này đọc từng byte từ

tệp và trả về giá trị của byte đọc được Trả về -1 khi hết tệp, và trả về IOException khi có lỗi đọc

Đóng tệp: dùng phương thức close() trên

FileInputStream.

Vào ra tệp dùng luồng byte (cont)

Trang 13

Vào ra tệp dùng luồng byte (cont)

Trang 14

Vào ra tệp dùng luồng byte (cont)

 Ghi dữ liệu ra tệp:

Mở tệp: tạo đối tượng lớp FileOutputStream gắn với

tệp cần mở

Ghi dữ liệu: dùng phương thức write(int byteval),

phương thức này ghi một byte xác định bởi tham số byteval xuống tệp, và trả về IOException khi có lỗi ghi

Đóng tệp: dùng phương thức close() trên

FileInputStream.

Trang 15

Vào ra tệp dùng luồng byte (cont)

Trang 16

 Vào ra tệp nhị phân

 Đọc dữ liệu từ tệp:

 Mở một tệp để đọc dữ liệu: dùng hàm tạo một đối

số của lớp DataInputStream tạo đối tượng gắn với

tệp cần mở, với đối số truyền vào là đối tượng lớp

Trang 18

 Vào ra tệp nhị phân

 Ghi dữ liệu ra tệp:

 Mở một tệp để ghi dữ liệu: dùng hàm tạo một đối số

của lớp DataOutputStream tạo đối tượng gắn với

tệp cần mở, với đối số truyền vào là đối tượng lớp

Trang 20

Vào ra tệp dùng luồng ký tự

 Đọc dữ liệu từ tệp:

 Mở một tệp để ghi dữ liệu: dùng hàm tạo một đối số

của lớp FileWriter tạo đối tượng gắn với tệp cần mở,

tên tệp cần mở là đối số truyền vào cho hàm tạo của

lớp Tạo một bộ đệm ghi dữ liệu (BufferedWriter) gắn với đối tượng FileWriter.

Trang 21

dụng phương thức flush() và close().

Vào ra tệp dùng luồng ký tự (cont)

Trang 22

 Đọc dữ liệu từ tệp (cont):

Ví dụ:

FileReader fr = new FileReader(“test.txt");

BufferedReader br = new BufferedReader(fr);

Trang 23

 Ghi dữ liệu ra tệp:

 Mở một tệp để ghi dữ liệu: dùng hàm tạo một đối số

của lớp FileWriter tạo đối tượng gắn với tệp cần mở,

tên tệp cần mở là đối số truyền vào cho hàm tạo của

lớp Tạo một bộ đệm ghi dữ liệu (BufferedWriter) gắn với đối tượng FileWriter.

Vào ra tệp dùng luồng ký tự (cont)

Trang 24

 Ghi dữ liệu ra tệp (cont)

Ghi dữ liệu: sử dụng phương thức write() trên bộ đệm

đọc dữ liệu

 Đóng tệp: làm rỗng và đóng bộ đệm đọc dữ liệu sử

dụng phương thức flush() và close().

Vào ra tệp dùng luồng ký tự (cont)

Trang 25

 Ghi dữ liệu ra tệp (cont)

Ví dụ:

FileWriter fwriter = new FileWiter(“test.txt”);

BufferedWriter buffered = new BufferedWriter(fwriter);

Trang 26

TÀI LIỆU THAM KHẢO

 Murach's Java SE 6 by Joel Murach and Andrea

Steelman

 Website

http://uitnetwork.com/forum/?showtopic=254

http://zensoft.vn/ShowArticle.aspx?ID=521

Trang 27

THANK YOU!

Ngày đăng: 14/04/2015, 09:00

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w