نمایش نتایج 1 تا 5 از 5

نام تاپیک: پیدا کردن یک فایل از داخل Subfolder های یک Folder

  1. #1
    کاربر دائمی آواتار nasr
    تاریخ عضویت
    آذر 1382
    محل زندگی
    هر کجا هستم باشم آسمان مال من است پنجره فکر هوا عشق زمین مال من است
    پست
    2,018

    پیدا کردن یک فایل از داخل Subfolder های یک Folder

    سلام

    چگونه میشه یه فایل را که هم اسم اون و هم پسوند اون را داریم در یه فولدر پیدا کنیم

    من یک سری فیل اتو کد هست که در یک فولدری به نام Cad و Subfolder هایی ذخیره شده است

    حالا آدرس فولدر اصلی را دارم و نمی دونم فایل مورد نظر در کدام Subfolder است

    می خوام آدرس فولدر اصلی را بدم خود برنامه بگرده توی هر کدوم از Subfolder ها هست فایل را باز کنه

    البته برای باز کردن اتوکد و یه فایل کد مشکلی ندارم فقط مشکلم پیدا کردن فایل در بین Subfolder ها است

    ممنون

  2. #2
    بنیان گذار Barnamenevis آواتار مهدی کرامتی
    تاریخ عضویت
    اسفند 1381
    محل زندگی
    کرج، گلشهر
    سن
    46
    پست
    6,379
    function FINDFile(const FILESpec: TFileName; attributes: integer): TStringList;
    var
    spec: string;
    list: TStringList;

    procedure RFINDFile(const folder: TFileName);
    var
    SearchRec: TSearchRec;
    begin
    // Locate all matching FILES in the current
    // folder and add their names to the list
    if FINDFirst(folder + spec, attributes, SearchRec) = 0 then begin
    try
    repeat
    if (SearchRec.Attr and faDIRECTORY = 0) or
    (SearchRec.Name <> '.') and (SearchRec.Name <> '..') then
    list.Add(folder + SearchRec.Name);
    until FINDNext(SearchRec) <> 0;
    except
    FINDClose(SearchRec);
    raise;
    end;
    FINDClose(SearchRec);
    end;
    // Now search the subfolders
    if FINDFirst(folder + '*', attributes
    or faDIRECTORY, SearchRec) = 0 then
    begin
    try
    repeat
    if ((SearchRec.Attr and faDIRECTORY) <> 0) and
    (SearchRec.Name <> '.') and (SearchRec.Name <> '..') then
    RFINDFile(folder + SearchRec.Name + '\');

    until FINDNext(SearchRec) <> 0;
    except
    FINDClose(SearchRec);
    raise;
    end;
    FINDClose(SearchRec);
    end;
    end; // procedure RFINDFile inside of FINDFile

    begin // function FINDFile
    list := TStringList.Create;
    try
    spec := ExtractFileName(FILESpec);
    RFINDFile(ExtractFilePath(FILESpec)&#4 1;;
    Result := list;
    except
    list.Free;
    raise;
    end;
    end;

    نحوه استفاده:
    var
    List: TStringList;
    begin
    List := FINDFile('c:\windows\ + 'file1.txt', 0);

    این تابع فولدر c:\windows و تمام زیرشاخه‌های آن را بدنبال فایل موردنظر میگردد و موارد یافت شده را در عناصر List قرار میدهد.

  3. #3
    کاربر دائمی آواتار nasr
    تاریخ عضویت
    آذر 1382
    محل زندگی
    هر کجا هستم باشم آسمان مال من است پنجره فکر هوا عشق زمین مال من است
    پست
    2,018
    آقا ما اگه این آقای کرامتی را نداشتیم ....

    بسیار ممنونم :kiss:

  4. #4
    حالا یکی اینو بگه
    1- چطوری میشه اسامی فایلهای داخل یک فولدر رو برگردوند ؟
    2-چطوری میشه نام فولدرهای یک پارتیشن رو پیدا کرد؟
    3- چطوری بفهمیم هارد دیسک چند پارتیشن داره؟

  5. #5
    خودم جواب اولی رو پیدا کردم
    http://www.swissdelphicenter.ch/torr...de.php?id=1725

تاپیک های مشابه

  1. کپی محتویات یک folder
    نوشته شده توسط delphi5 در بخش برنامه نویسی در Delphi
    پاسخ: 1
    آخرین پست: پنج شنبه 30 شهریور 1385, 19:11 عصر
  2. متد Create folder,move folder
    نوشته شده توسط Arash_VBScripts در بخش برنامه نویسی در 6 VB
    پاسخ: 3
    آخرین پست: جمعه 10 شهریور 1385, 11:30 صبح

قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •