THINK JAVA: CÁCH SUY NGHĨ NHƯ NHÀ KHOA HỌC MÁY TÍNH - Trang 156

processFile(

"words.txt"

);

}

public static void

processFile(String filename)

throws

FileNotFoundException,

IOException {

FileReader fileReader =

new

FileReader(filename);

BufferedReader in =

new

BufferedReader(fileReader);

while

(

true

) {

String s = in.readLine();

if

(s ==

null

)

break

;

System.out.println(s);

}

}

}

Dòng đ u tiên làm nhi m v nh p

ậ java.io, gói ch ng trình có ch a

ươ

ứ FileReader, BufferedReader, và

ph n còn l i trong th m c th a k l p đ th c hi n nh ng công vi c gi n đ n thông th

ng. D u

ư ụ

ừ ế ớ

ể ự

ơ

ườ

ấ * có

nghĩa là nó s nh p vào toàn b các l p trong gói ch

ng trình này.

ươ

Sau đây cũng là ch

ng trình đó đ

c vi t l i b ng ngôn ng Python:

ươ

ượ

ế ạ ằ

for word in open('words.txt'):

print word

Tôi không đùa. T ng đó đã đ m t ch

ng trình, v i tính năng t

ng t .

ủ ộ

ươ

ươ

B.4 B t bi t l

ệ ệ

ví d tr

c,

ụ ướ processFile có th phát nh ng bi t l

ệ ệ FileNotFoundException và IOException. Và

vì main g i đ n

ọ ế processFile, nó ph i khai báo cùng nh ng bi t l đó. Trong m t ch ng trình l n

ệ ệ

ươ

h n,

ơ main có th khai báo t ng bi t l có m t.

ệ ệ

M t cách làm khác là

b t

bi t l này b ng câu l nh

ệ ệ

ệ try. Sau đây là m t ví d :

public static void

main(String[] args) {

try

{

processFile(

"words.txt"

);

}

catch

(Exception ex) {

System.out.println(

"Cách này không có tác dụng. Sau đây là lý do:"

);

ex.printStackTrace();

}

}

C u trúc này t

ng t nh m t l nh

ươ

ư ộ ệ if. N u “nhánh” th nh t ch y mà không gây ra m t bi t l nào, thì

ế

ệ ệ