Kiểm tra sự tồn tại của tập tin, thư mục, ổ đĩa

Các thủ thuật về hệ thống, thư mục, tập tin và mạng
Đăng trả lời
Hình đại diện của thành viên
clarkkent
Mạnh Thường Quân
Mạnh Thường Quân
Bài viết: 1641
Ngày tham gia: Thứ 4 16/04/2008 11:25 am
Đến từ: Chợ Lách - Bến Tre
Been thanked: 32 times
Tiếp xúc:

Kiểm tra sự tồn tại của tập tin, thư mục, ổ đĩa

Gửi bài by clarkkent »

Thủ thuật: Kiểm tra sự tồn tại của tập tin, thư mục, ổ đĩa
Tác giả: sưu tầm
Mô tả: Kiểm tra sự tồn tại của tập tin, thư mục, ổ đĩa

Vấn đề này đã có rồi, tổng hợp lại thui

Mã: Chọn tất cả

Public Function FExists(OrigFile As String)Dim fsSet fs = CreateObject("Scripting.FileSystemObject")FExists = fs.fileexists(OrigFile)End Function'Returns a boolean - True if the file exists  Public Function DirExists(OrigFile As String)Dim fsSet fs = CreateObject("Scripting.FileSystemObject")DirExists = fs.folderexists(OrigFile)End Function'Returns a boolean - True if the folder exists  Public Function DExists(OrigFile As String)Dim fs, dSet fs = CreateObject("Scripting.FileSystemObject")    If fs.driveexists(OrigFile) = True Then    Set d = fs.getdrive(OrigFile)    DExists = 1        If d.isready = True Then        DExists = 2        Exit Function        End If    Else    DExists = 0    End IfEnd Function'Code to check the state of a drive (returns 0 if the drive does not exist, 1 if the drive exists but contains no media, 2 if the drive exists and contains media.  Hard-drives will always return 2) Private Sub Command1_Click()MsgBox FExists("E:\aNDy desiGn\VINH TAI\VT_090323.cdr")MsgBox DirExists("E:\aNDy desiGn\VINH TAI\")MsgBox DExists("C:\")End Sub 
• Hôm bây: www.tinsoftware.com ^ ^
Cố gắng lên...
Hình đại diện của thành viên
nguyenbacbk
Thành viên danh dự
Thành viên danh dự
Bài viết: 115
Ngày tham gia: Thứ 2 27/04/2009 2:25 pm
Đến từ: Thai Nguyen city
Tiếp xúc:

Re: Kiểm tra sự tồn tại của tập tin, thư mục, ổ đĩa

Gửi bài by nguyenbacbk »

Thank clarkkent !
Tôi đã đọc tài liệu mà bác gửi cho tôi về câu hỏi mà tôi đang quan tâm. Tôi cảm ơn vì sự giúp đỡ của bác.
Bây giờ tôi muốn kiểm tra trên toàn ổ cứng mà không phải gán trước đường dẫn thì phải làm như thế nào? (nghĩa là khi lưu file tôi mở hộp thoại chọn đường dẫn khi đó mới kiểm tra bằng cách đánh tên vào.nếu chưa có thì tạo file mới.ngược lại thì báo đã tồn tại file).mong bác chỉ giúp.
Bằng ĐH là chứng nhận biết tự học, lấy bằng xong mới học ĐH
Hình đại diện của thành viên
clarkkent
Mạnh Thường Quân
Mạnh Thường Quân
Bài viết: 1641
Ngày tham gia: Thứ 4 16/04/2008 11:25 am
Đến từ: Chợ Lách - Bến Tre
Been thanked: 32 times
Tiếp xúc:

Re: Kiểm tra sự tồn tại của tập tin, thư mục, ổ đĩa

Gửi bài by clarkkent »

nguyenbacbk đã viết:Thank clarkkent !
Tôi đã đọc tài liệu mà bác gửi cho tôi về câu hỏi mà tôi đang quan tâm. Tôi cảm ơn vì sự giúp đỡ của bác.
Bây giờ tôi muốn kiểm tra trên toàn ổ cứng mà không phải gán trước đường dẫn thì phải làm như thế nào? (nghĩa là khi lưu file tôi mở hộp thoại chọn đường dẫn khi đó mới kiểm tra bằng cách đánh tên vào.nếu chưa có thì tạo file mới.ngược lại thì báo đã tồn tại file).mong bác chỉ giúp.
ví dụ thử, bạn mò thêm
Tập tin đính kèm
path_ex.rar
(1.12 KiB) Đã tải về 1098 lần
• Hôm bây: www.tinsoftware.com ^ ^
Cố gắng lên...
Hình đại diện của thành viên
nguyenbacbk
Thành viên danh dự
Thành viên danh dự
Bài viết: 115
Ngày tham gia: Thứ 2 27/04/2009 2:25 pm
Đến từ: Thai Nguyen city
Tiếp xúc:

Re: Kiểm tra sự tồn tại của tập tin, thư mục, ổ đĩa

Gửi bài by nguyenbacbk »

Thank clarkkent !
Mấy cái bác gửi tôi đang cần. Cảm ơn vì sự giúp đỡ của bác
Bằng ĐH là chứng nhận biết tự học, lấy bằng xong mới học ĐH
Hình đại diện của thành viên
doicanhden
Thành viên tích cực
Thành viên tích cực
Bài viết: 160
Ngày tham gia: Thứ 4 02/09/2009 4:29 pm
Đến từ: Tp.HCM
Has thanked: 7 times
Been thanked: 3 times
Tiếp xúc:

Re: Kiểm tra sự tồn tại của tập tin, thư mục, ổ đĩa

Gửi bài by doicanhden »

dùng ham Dir() có phải nhanh hơn ko
Câu Lạc Bộ VB
Hình đại diện của thành viên
thuongall
Quản trị
Quản trị
Bài viết: 456
Ngày tham gia: Thứ 4 26/01/2005 8:05 am
Đến từ: Quê hương Đồng Khởi
Been thanked: 9 times
Tiếp xúc:

Re: Kiểm tra sự tồn tại của tập tin, thư mục, ổ đĩa

Gửi bài by thuongall »

doicanhden đã viết:dùng ham Dir() có phải nhanh hơn ko
Máy của bạn không biết sao, chứ máy nhà tôi code như sau:

Mã: Chọn tất cả

Private Sub Form_Load()    MsgBox Dir("")End Sub
Thì nó hiện ra "CVPACK.EXE", từ đó không còn dám dùng hàm Dir để kiểm tra sự tồn tại của tập tin nữa. :D
Hình đại diện của thành viên
truongphu
VIP
VIP
Bài viết: 4785
Ngày tham gia: Chủ nhật 04/11/2007 10:57 am
Đến từ: Cam Đức, Khánh hòa
Has thanked: 14 times
Been thanked: 528 times

Re: Kiểm tra sự tồn tại của tập tin, thư mục, ổ đĩa

Gửi bài by truongphu »

Bộ sưu tập Dir ""
Máy tôi: "VB6.lnk"
:D

---------
Hồi nãy do project chưa lưu
Giờ lưu rồi, có kết quả: "Form1.frm"

thì ra có liên quan ít nhiều Vb6
mà cvpack.exe cũng nằm trong vb98
o0o--truongphu--o0o

.........
Ghé thăm:
Chuyện Linh Tinh
Hình đại diện của thành viên
doicanhden
Thành viên tích cực
Thành viên tích cực
Bài viết: 160
Ngày tham gia: Thứ 4 02/09/2009 4:29 pm
Đến từ: Tp.HCM
Has thanked: 7 times
Been thanked: 3 times
Tiếp xúc:

Re: Kiểm tra sự tồn tại của tập tin, thư mục, ổ đĩa

Gửi bài by doicanhden »

vậy trước khi kiểm tra bằng hàm dir() thì dùng if lọai trừ khả năng là vbNullString
Câu Lạc Bộ VB
Hình đại diện của thành viên
doicanhden
Thành viên tích cực
Thành viên tích cực
Bài viết: 160
Ngày tham gia: Thứ 4 02/09/2009 4:29 pm
Đến từ: Tp.HCM
Has thanked: 7 times
Been thanked: 3 times
Tiếp xúc:

Re: Kiểm tra sự tồn tại của tập tin, thư mục, ổ đĩa

Gửi bài by doicanhden »

Giờ Thì Em Dùng HÀm Này , Mọi Người Xem Coi Được Không

  1. Private Function Exist(ByVal path As String) As Boolean
  2.   On Error GoTo Lag
  3.   Call GetAttr(path)
  4.   Exist = (Err.Number = 0)
  5.   Exit Function
  6. Lag
  7.   Exist = False
  8. End Function
Câu Lạc Bộ VB
thanhphongialy
Thành viên chính thức
Thành viên chính thức
Bài viết: 12
Ngày tham gia: Chủ nhật 29/04/2012 9:03 am
Been thanked: 3 times

Re: Kiểm tra sự tồn tại của tập tin, thư mục, ổ đĩa

Gửi bài by thanhphongialy »

chân thành cảm ơn!
Đăng trả lời

Quay về