Một số phương pháp hữu ích của FileHandle
Một số phương thức thường được sử dụng của mô-đun FileHandle như sau:
Phương pháp | Mục đích |
kể | Nó được sử dụng để đếm kích thước của tệp theo byte. |
getc | Nó được sử dụng để đọc từng ký tự của nội dung tập tin. |
tìm kiếm | Nó được sử dụng để di chuyển con trỏ tập tin đến một vị trí cụ thể. |
ôi | Nó chỉ ra sự kết thúc của tập tin. |
đóng | Nó được sử dụng để đóng trình xử lý tệp được xác định trước đó. |
Ví dụ về Perl FileHandle
Các cách sử dụng khác nhau của mô-đun FileHandle được trình bày trong phần hướng dẫn này bằng nhiều ví dụ.
Ví dụ 1: Tạo một tệp mới
Tạo một tệp Perl với tập lệnh sau để tạo một tệp mới bằng mô-đun FileHandle. Tên tệp được lấy từ người dùng và kiểm tra xem nó có tồn tại hay không. Nếu tệp không tồn tại, tệp sẽ được mở để ghi bằng cách tạo một đối tượng thuộc lớp “FileHandle” sau khi đợi 1 giây.
#!/usr/bin/Perl
Sử dụng nghiêm ngặt ;
sử dụng cảnh báo ;
sử dụng 5.34.0 ;
sử dụng FileHandle ;
#Lấy tên file từ người dùng để tạo
in 'Nhập tên tập tin:' ;
$ f của tôi = <>;
nhai ( $f ) ;
#Kiểm tra xem file đã tồn tại hay chưa
nếu như ( -e$f )
{
#In thông báo nếu tệp tồn tại
nói 'Tập tin đã tồn tại.' ;
}
khác
{
#Tạo đối tượng xử lý tập tin
$FileHandler của tôi = FileHandle- > mới ;
nói 'Đang ghi vào tập tin...' ;
#Đợi 1 giây
ngủ ( 1 ) ;
#Mở file để viết
nếu như ( $FileHandler- > mở ( '> $f' ) )
{
#Viết một dòng văn bản vào tập tin
in $FileHandler 'Đó là một tin nhắn thử nghiệm. \N Đó là dòng thứ hai. \N ' ;
#Đóng trình xử lý tệp
$FileHandler- > đóng ;
}
}
Đầu ra:
Theo kết quả đầu ra, tệp “test.txt” không tồn tại trước đó và tệp này được tạo bằng hai dòng văn bản. Sau đó, lệnh “cat” được thực thi để kiểm tra xem file được tạo thành công với nội dung hay chưa:
Tập lệnh được thực thi lại với cùng giá trị đầu vào và thông báo “Tệp đã tồn tại” được in ở đây vì tệp “test.txt” đã được tạo trước đó.
Ví dụ 2: Đọc nội dung của File
Tạo một tệp Perl với tập lệnh sau để đọc nội dung của tệp bằng cách sử dụng lớp “FileHandle” nếu tệp tồn tại. Tên tập tin được lấy từ người dùng.
#!/usr/bin/perlSử dụng nghiêm ngặt ;
sử dụng cảnh báo ;
sử dụng 5.34.0 ;
sử dụng FileHandle ;
#Lấy tên file từ người dùng để tạo
$ f của tôi = <>;
$ f của tôi = ;
nhai ( $f ) ;
#Kiểm tra xem file đã tồn tại hay chưa
nếu như ( -e$f )
{
#Mở file để đọc
$FileHandler của tôi = FileHandle- > mới ( ' <$f' ) ;
#In nội dung tập tin
in < $FileHandler >;
#Đóng trình xử lý tệp
đóng $FileHandler ;
}
Đầu ra:
Nội dung của file “test.txt” được in ở đầu ra vì nó tồn tại ở vị trí hiện tại:
Ví dụ 3: Nối nội dung vào tệp
Tạo một tệp Perl với tập lệnh sau để nối nội dung vào một tệp không trống và in kích thước của tệp theo byte. Tên tập tin được lấy từ người dùng. Nếu tệp tồn tại và chứa dữ liệu, một dòng văn bản sẽ được thêm vào cuối tệp. Nếu không, một tin nhắn sẽ được in.
#!/usr/bin/perlSử dụng nghiêm ngặt ;
sử dụng cảnh báo ;
sử dụng 5.34.0 ;
sử dụng FileHandle ;
#Lấy tên file từ người dùng để tạo
in 'Nhập tên tập tin:' ;
$ f của tôi = <>;
nhai ( $f ) ;
#Kiểm tra xem tệp đã tồn tại và có trống hay không
nếu như ( -s$f )
{
$FileHandler của tôi = FileHandle- > mới ( ' >> $f' ) ;
#In kích thước tệp
in 'Kích thước của tập tin là' . $FileHandler- > kể. ' byte. \N ' ;
nói 'Đang thêm nội dung vào tệp...' ;
#Đợi 1 giây
ngủ ( 1 ) ;
#Viết nội dung ở cuối file
in $FileHandler 'Đó là một dòng mới. \N ' ;
#Đóng trình xử lý tệp
$FileHandler- > đóng ;
}
khác
{
nói 'Tập tin không tồn tại.' ;
}
Đầu ra:
Theo kết quả đầu ra, một dòng mới sẽ được thêm vào tệp “test.txt” và kích thước của tệp là 45 byte. Sau đó, lệnh “cat” được thực thi để kiểm tra xem nội dung đã được thêm đúng vào tệp hay chưa:
Phần kết luận
Mô-đun FileHandle là một trong các tùy chọn của Perl để đọc, ghi hoặc nối thêm các tệp. Ba cách sử dụng khác nhau của mô-đun này được trình bày trong hướng dẫn này bằng các ví dụ đơn giản.