I E= T*R
10 .5 Vẽ văn bản và đồ họa lên đối tượng giao diện
11.7 Các hàm truy xuất thuộc tính file/thư mục Các hàm xác định vị trí truy xuất trong file
Các hàm xác định vị trí truy xuất trong file
q Hàm Loc (filenum) trả về vị trí truy xuất hiện tại trong file filenum. Mode Return Value
Random chỉ số record đọc/ghi lần cuối cùng.
Binary chỉ số byte đọc/ghi lần cuối cùng. Output chỉ số byte đọc/ghi lần cuối cùng /128 | Append (nhưng thường không dùng kết quả này) | Input
Ví dụ : Dim MyChar As Byte
Open "TestFile" For Binary As #1 ' mở file để đọc/ghi. Do While Not EOF(1) ' lặp cho đến hết file.
http://www.foxitsoftware.com For evaluation only.
MyChar = Input(1, #1) ' đọc byte kế tiếp.
Debug.Print Loc(1) ' hiển thị vị trí byte vừa được đọc Loop
Close #1 ' đóng file.
q Hàm Seek (filenum) trả về vị trí truy xuất kế tiếp trong file filenum. Mode Return Value
Random hoạt động truy xuất kế tiếp sẽ xảy ra ở vị trí record này
Binary hoạt động truy xuất kế tiếp sẽ xảy ra ở vị trí byte này | Output, vị trí byte đầu tiên là 1, kế tiếp là 2...
| Append
| Input
Ví dụ : Dim MyChar As Byte
Open "TestFile" For Input As #1 ' mở file để đọc. Do While Not EOF(1) ' lặp cho đến hết file. MyChar = Input(1, #1) ' đọc ký tự (byte) kế tiếp. Debug.Print Seek(1) ' hiển thị vị trí byte sẽ đọc kế tiếp Loop
Close #1 ' đóng file.
q Lệnh Seek [#]filenumber, position thiết lập vị trí truy xuất kế tiếp trong file filenum. Mode Return Value
Random hoạt động truy xuất kế tiếp sẽ xảy ra ở vị trí record position
Binary hoạt động truy xuất kế tiếp sẽ xảy ra ở vị trí byte position
| Output, vị trí byte đầu tiên là 1, kế tiếp là 2... | Append
| Input
Các hàm truy xuất thuộc tính file
Generated by Foxit PDF Creator © Foxit Software
http://www.foxitsoftware.com For evaluation only.
q Hàm FileDateTime (pathname) trả về ngày/giờ hiệu chỉnh lần cuối của file xác định bởi thông số pathname.
Ví dụ : Dim MyStamp As Date
MyStamp = FileDateTime ("c:\windows\win.com")
q Hàm GetAttr (pathname) trả về byte thuộc tính của file xác định bởi thông số pathname. Thứ tự các bit thuộc tính trong byte thuộc tính như sau :
Giá trị Tên hằng gợi nhớ Diễn giải
0 vbNormal Normal
1 vbReadOnly file chỉ đọc 2 vbHidden file ẩn
4 vbSystem file hệ thống 8 vbVolume tên nhãn đĩa 16 vbDirectory thư mục
32 vbArchive file bị thay đổi từ lần backup cuối Ví dụ : If GetAttr ("c:\windows\win.com") And vbReadOnly Then MsgBox "c:\windows\win.com là file chỉ đọc"
End If
q Hàm SetAttr pathname, attributes thiết lập thuộc tính của file xác định bởi thông số
pathname theo byte attributes.
Ví dụ : đoạn code sau sẽ thiết lập thuộc tính của file c:\windows\win.com về read-only. Dim bytFileAttr As Byte
bytFileAttr = GetAttr ("c:\windows\win.com")
bytFileAttr = bytFileAttr Or vbReadOnly ' Or bitwise SetAttr "c:\windows\win.com", bytFileAttr
q Hàm FreeFile [(rangenumber)] trả về 1 số thuộc kiểu Integer miêu tả chỉ số file chưa được dùng (để ta dùng an toàn). Thường không cần dùng tham số khi gọi hàm này.
http://www.foxitsoftware.com For evaluation only.
q Hàm LOF (#filenum) trả về 1 giá trị thuộc kiểu Long miêu tả kích thước của file đã được mở và hiện được xác định bởi thông số #filenum.
Ví dụ : Dim lngFileSize As Long, filenum As Integer filenum = FreeFile
Open "c:\windows\win.com" For Input As #filenum ' mở file lngFileSize = LOF (filenum) ' lấy kích thước file đã mở #1 ...
Close #1 ' đóng file
q Hàm FileLen (pathname) trả về 1 giá trị thuộc kiểu Long miêu tả kích thước của file xác định bởi thông số pathname.
Ví dụ : Dim lngFileSize As Long
lngFileSize = FileLen ("c:\windows\win.com")
Lệnh nhân bản và xóa file
q Lệnh FileCopySourcePath, DestPath.
nhân bản file SourcePath ra file DestPath. Không được mở file rồi nhân bản nó.
Ví dụ : FileCopy c:\autoexec.bat c:\backup\autoexec.bat q Lệnh Killpattern
xóa từ 0 đến n file có tên thỏa mãn mẫu pattern (dùng ký tự * và ? để miêu tả).
Ví dụ : Kill "c:\windows\*.tmp"