انجمن‌های فارسی اوبونتو

کمک و پشتیبانی => برنامه‌سازی => نویسنده: meshkin در 08 اردیبهشت 1388، 03:45 ب‌ظ

عنوان: سوال در مورد VB یا Gambas
ارسال شده توسط: meshkin در 08 اردیبهشت 1388، 03:45 ب‌ظ
سلام دوستان.
از کسانی که با VB یا احیانا Gambas کار کرده اند، یه سوال داشتم:
می خواستم ببینم چگونه می شود درون یه دایرکتوری دنبال یک فایل گشت؟ البته از طریق کد! نه از طریق اشیای گرافیکی!
اگه میشه کدش رو بنویسید!
ممنون.
عنوان: پاسخ به: سوال در مورد VB یا Gambas
ارسال شده توسط: z.k در 08 اردیبهشت 1388، 10:01 ب‌ظ
Sub DirWalk(ByVal sPattern As String, ByVal CurrDir As String, sFound()
As String)
Dim i As Integer
Dim sCurrPath As String
Dim sFile As String
Dim ii As Integer
Dim iFiles As Integer
Dim iLen As Integer

If Right$(CurrDir, 1) <> "\" Then
    Dir1.Path = CurrDir & "\"
Else
    Dir1.Path = CurrDir
End If
For i = 0 To Dir1.ListCount
    If Dir1.List(i) <> "" Then
        DoEvents
        Call DirWalk(sPattern, Dir1.List(i), sFound)
    Else
        If Right$(Dir1.Path, 1) = "\" Then
            sCurrPath = Left(Dir1.Path, Len(Dir1.Path) - 1)
        Else
            sCurrPath = Dir1.Path
        End If
        File1.Path = sCurrPath
        File1.Pattern = sPattern
        If File1.ListCount > 0 Then 'matching files found in the
directory
            For ii = 0 To File1.ListCount - 1
                ReDim Preserve sFound(UBound(sFound) + 1)
                sFound(UBound(sFound) - 1) = sCurrPath & "\" &
File1.List(ii)
            Next ii
        End If
        iLen = Len(Dir1.Path)
        Do While Mid(Dir1.Path, iLen, 1) <> "\"
            iLen = iLen - 1
        Loop
        Dir1.Path = Mid(Dir1.Path, 1, iLen)
    End If
Next i
End Sub
عنوان: پاسخ به: سوال در مورد VB یا Gambas
ارسال شده توسط: meshkin در 09 اردیبهشت 1388، 03:11 ب‌ظ
مرسی.
عنوان: پاسخ به: سوال در مورد VB یا Gambas
ارسال شده توسط: مهدی پیشگوی در 10 اردیبهشت 1388، 10:53 ق‌ظ
در پایتون . برای مثال می خواییم دنبال فایل m3.txt  بگردیم
import os.path
myfile="m3.txt"
def print_dir(path):
  for x in os.listdir(path):
    full_adr=os.path.join(path,x)
    file1=os.path.split(x)
    if os.path.isdir(full_adr):
      print_dir(full_adr) 
print_dir ("/tmp")