CommonDialog – Mở và lưu file text với visual basic – VB6

Trong bài này chúng ta sẽ đi tìm hiểu về CommonDialog để mở và lưu file dưới dạng .txt nhé ^^

CommonDialog – Mở và lưu file text

CommonDialog – Mở và lưu file text

Mặc định thì Vb6 không hiện CommonDialog ở bên hộp công cụ và ta phải thêm nó vào.

Các bước thêm CommonDialog vào vb6

Bước 1: Click chuột phải vào hộp công cụ như trong hình rồi chọn Components

Thêm CommonDialog

Thêm CommonDialog

Bước 2: Tại của sổ hiện ra, bạn tìm đến và check vào dòng  Microsoft Common Dialog Control 6.0 (SP3 nếu có) rồi Apply -> Ok

Thêm CommonDialog

Thêm CommonDialog


Bước 3: Khi này ở bên hộp công cụ của bạn đã có biểu tượng của Common Dialog, bạn chỉ cần click vào đó và thêm vào form của bạn là ok.

Thêm CommonDialog

Thêm CommonDialog


Sau khi đã làm các bước trên thì các bạn dành chút thời gian để tạo form riêng cho mình để có thể mở và lưu file nhé. Ví dụ mình có form như hình bên dưới.

Thêm CommonDialog

Thêm CommonDialog

Trước khi làm việc với CommonDialog để mở và lưu chỉ với file text ta thêm đoạn code sau vào form_load() nhé


Private Sub Form_Load()
CommonDialog1.Filter = "Text files (*.txt)|*.txt"
End Sub

Trên đây cho phép bạn chỉ làm việc với file .txt. Nếu bạn muốn thêm file khác thì sửa như sau


Private Sub Form_Load()
CommonDialog1.Filter = "Text files (*.txt)|*.txt|Images (*.jpg)|*.jpg|All file(*.*)|*.*"

'Cách viết: [phần mô tả] | [Định dạng file]

End Sub

Code để mở file .txt


Dim f As Integer
On Error GoTo OpenErr 'Bẫy lỗi
 CommonDialog1.ShowOpen ' Mở hộp thoại mở file

' Lay gia tri ten file
 FileName = CommonDialog1.FileName

f = FreeFile 'Chỉ số của tệp tin
 txtBox.Text = ""
 Open FileName For Input As f
 Do While Not EOF(1) 'EOF để kiểm tra xem file đã kết thúc chưa?
 Line Input #f, contentFile 'Đọc từng dòng của file text rồi lưu vào biến contentFile
 txtBox.Text = txtBox.Text & contentFile & vbCrLf 'Hiển thị nội dung vào txtBox
 Loop
 Close f 'Đóng File
 Text1.Text = FileName
 Exit Sub

OpenErr:
Select Case Err
 Case 62
 MsgBox "File rong"
 Case 75
 MsgBox "Khong chon file de mo", vbCritical
 Case Else
 MsgBox "Loi. " & Err & " : " & Error
 End Select
Exit Sub

Thông tin thêm về hàm Open

Tên hàm:
Open

 

Mô tả:
Open [PathName as String] For [Mode] As [ID File]
Mỗi khi thấy lệnh Open, VB sẽ sẵn sàng cho các thao tác đọc và ghi lên File được cung cấp ở tham số

 

Tham số:
[PathName]: tên và đường dẫn của tập tin cần thao tác.
[Mode]: có năm chế độ mở tập tin được đặt ở tham số [Mode]
[ID File]: chỉ số của tập tin đang thao tác.

 

Ghi chú:
Các dạng thức cơ bản của lệnh Open:
Open [Pathname] For Input As Filenum’ mở File và chỉ đọc được thông tin, không ghi lên được.
Open [PathName] For Output As Filenum’ mở File để xuất thông tin. Khi được mở theo dạng này mọi thông tin cũ trên File sẽ bị mất.
Open [PathName] For Append As Filenum’ mở File để đọc và ghi tiếp lên được.
Open [PathName] For Random As Filenum’ mở và truy cập ngẫu nhiên các bản ghi và các trường trên File (phải biết được cấu trúc của các bản ghi)
Open [PathName] For Binary As Filenum’ đọc ghi theo Byte. Đây là dạng tổng quát và linh hoạt nhất.

Code để Lưu file .txt


Dim t As Integer
On Error GoTo SaveErr1 'bẫy lỗi
 CommonDialog1.ShowSave 'Mở hộp thoại để Lưu file
 t = FreeFile 'Chỉ số File
 On Error GoTo SaveErr2 ' Bẫy lỗi 2
 FileNameSave = CommonDialog1.FileName 'Tên và đường dẫn của file
 Open FileNameSave For Output As t
 Print #t, txtBox.Text 'Ghi nội dungg của txtBox vào file
 Close t ' Đóng file
 Text1.Text = FileNameSave
 Exit Sub
SaveErr2:
If (MsgBox("Chua luu file", vbCritical + vbOKCancel, "Thong bao") = vbOK) Then 'Nếu ấn Cancel thì hỏi lại có lưu hay không?
 Close t
 Exit Sub
Else
 Command1_Click
End If

SaveErr1:
 Exit Sub

Vậy là đã xong rồi đó.

Bạn có thể download Common Dialog của mình để tham khảo.

Chúc các bạn thành công ^^

CommonDialog – Mở và lưu file text với visual basic – VB6
5 (100%) 2 votes
  • Bình luận
Có thể bạn quan tâm
x