تبلیغات :
ماهان سرور
آکوستیک ، فوم شانه تخم مرغی ، پنل صداگیر ، یونولیت
دستگاه جوجه کشی حرفه ای
فروش آنلاین لباس کودک
خرید فالوور ایرانی
خرید فالوور اینستاگرام
خرید ممبر تلگرام

[ + افزودن آگهی متنی جدید ]




نمايش نتايج 1 به 1 از 1

نام تاپيک: آموزش کار با فایل ها در C++ Qt

  1. #1
    در آغاز فعالیت
    تاريخ عضويت
    Feb 2014
    پست ها
    1

    13 آموزش کار با فایل ها در C++ Qt

    چارچوب Qt برای کار با فایل ها کلاس QFile را ارائه کرده است. QFile رابطی برای خواندن و نوشتن فایل های متنی و یا باینری می باشد. از این کلاس هم می توان به صورت تنها و هم با سایر کلاس ها مانند QTextStream و QDataStream استفاده نمود.
    .

    توجه: برای درک بهتر این مقاله آشنایی با مبانی زبان برنامه نویسی C++ الزامی است.

    برای استفاده از این کلاس باید هدر <QFile> را include کنید.
    نام فایلی که قصد کار کردن با آن را دارید معمولا در constructor کلاس ارسال می شود. جدا کننده در نام فایل باید / باشد حتی در ویندوز! اگرچه در ویندوز جدا کننده \ هم پذیرفته می شود ولی بهتر است برای حفظ امکان جابجایی کد خود همیشه از / استفاده کنید.
    متد های open و close برای باز کردن و بستن فایل استفاده می شوند. با استفاده از توابع read و readLine و readAll و write می توانید اعمال خواندن و نوشتن را انجام دهید. اگرچه معمولا این کارها با استفاده از کلاس های QTextStream و QDataStream انجام می شوند.
    تابع size هم مقدار حجم فایل را بر می گرداند.


    مثال نوشتن در فایل

    کد:
    برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید

    در خط 5 یک نمونه از کلاس QFile با نام متغییر file ایجام می کنیم که قصد کار با فایل E:\1.txt را دارد.
    در خط 6 فایل را باز می کنیم. متد open آرگومنتی از نوع OpenMode دریافت می کند که مشخص کننده نحوه باز کردن فایل است. برخی از مقادیر معتبر عبارتند از QIODevice::ReadOnly, QIODevice::WriteOnly, QIODevice::ReadWrite, QIODevice::Append. در اینجا فایل به صورت متن فقط قابل نوشتن باز شده است.
    در خط 8 عبارت salam در فایل نوشته می شود و در خط بعد فایل بسته می شود.
    نمونه کد خواندن فایل


    کد:
    برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید

    طریقه باز کردن فایل مانند نمونه کد نوشتن فایل است با این تفاوت که OpenMode به جای QIODevice::WriteOnly مقدار QIODevice::ReadOnly داده شده است چرا که در اینجا قصد نوشتن فایل را نداریم.
    بعد از باز کردن فایل با استفاده از تابع readAll تمام محتوای فایل را می خوانیم و در متغییر text که از نوع QString است ذخیره می کینم. این محتوا در خط 11 در کنسول نمایش داده می شود.


    بررسی وجود و یا عد وجود فایل

    کد:
    برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید


    کد بالا در صورت وجود فایل D:\1.txt مقدار true بر می گرداند در غیر این صورت مقدار false.


    کپی کردن فایل

    کد:
    برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
    فایل D:\1.txt را در D:\2.txt کپی می کند. در صورت موفقیت مقدار true را بر می گرداند.


    حذف کردن فایل


    کد:
    برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
    کد بالا فایل D:\2.txt را حذف می کند. در صورت موفقیت مقدار true را بر می گرداند.

    لطفا سوالات و مشکلات خود در [ برای مشاهده لینک ، با نام کاربری خود وارد شوید یا ثبت نام کنید ]


    [ برای مشاهده لینک ، با نام کاربری خود وارد شوید یا ثبت نام کنید ]

  2. این کاربر از naminic بخاطر این مطلب مفید تشکر کرده است


Thread Information

Users Browsing this Thread

هم اکنون 1 کاربر در حال مشاهده این تاپیک میباشد. (0 کاربر عضو شده و 1 مهمان)

User Tag List

قوانين ايجاد تاپيک در انجمن

  • شما نمی توانید تاپیک ایحاد کنید
  • شما نمی توانید پاسخی ارسال کنید
  • شما نمی توانید فایل پیوست کنید
  • شما نمی توانید پاسخ خود را ویرایش کنید
  •