اطلاعیه

Collapse
هیچ اطلاعیه ای هنوز ایجاد نشده است .

روش های خواندن و نوشتن سکتورهای هارد دیسک

Collapse
X
 
  • فیلتر
  • زمان
  • نمایش
پاک کردن همه
new posts

  • روش های خواندن و نوشتن سکتورهای هارد دیسک

    دسلام دوستان
    سوال ینده از شما دوستان این هست که چطور میشه
    سکتور های هارد دیسک رو به وسیله ++c خوند و در آن نوشت. البته در سیستم عامل مک
    ممنون میشم اگر میدونید کمکم کنید و اگر منیع خوبی سراغ دارید معرفی کنید.

  • #2
    1. فونت کوچکتر هم جواب میده دوست عزیز. روی بیلبورد که نمی نویسید!
    2. برای خواندن و نوشتن روی دیسک سخت باید از توابع کار با فایل استفاده کنید. این کار حتی توسط Shell هم امکان پذیره. کافیه ترمینال مک رو باز کنید و بنویسید :

    کد:
    echo "Salam" > salam.txt
    و بعدش فایل salam.txt رو باز کنید.

    اما برای ++C ! اینجا قضیه بهتر میشه. دقت کنید سینتکس در سیستم عاملها تفاوتی نمیکنه چون ++C استاندارد هست فقط نتیجه کامپایل شده در مک قابل اجراست و برای سایر سیستم عاملها (مثل ویندوز) باید یا از Cross Compiler استفاده کنید و یا این که توی خود سیستم عامل مقصد کامپایل کنید.

    اینم نمونه خوندن و نوشتن ++C :

    کد:
    #include <iostream>
    #include <string>
    #include <fstream>
    using namespace std;
    class record
    {
    public:
    string nam;
    int shomare;
    };
    
    int main()
    {
    fopen ("test5.txt","w+");//sakht yek file ba dastrasi read+write
    fstream fw("test5.txt");
    record temp;
    
    //***************************************************************
    temp.nam="mohammad";
    temp.shomare=123;
    fw.write( (char*) & temp,sizeof(class record) );
    temp.nam="mohammad";
    temp.shomare=125;
    fw.write( (char*) & temp,sizeof(class record) );
    temp.nam="mohammad";
    temp.shomare=127;
    fw.write( (char*) & temp,sizeof(class record) );
    temp.nam="mohammad";
    temp.shomare=129;
    fw.write( (char*) & temp,sizeof(class record) );
    temp.nam="mohammad";
    temp.shomare=131;
    fw.write( (char*) & temp,sizeof(class record) );
    //*****************************************************************
    fw.seekp(0);
    fw.seekp(sizeof(class record),ios::cur);
    fw.write( (char*) & temp,sizeof(class record) );
    fw.close();
    //**************************************************************
    fstream fr("test5.txt");
    while( fr.read( (char*)& temp,sizeof(class record) ) )
    cout<<temp.nam<<" "<<temp.shomare<<endl;
    fr.close();
    //************************************************************
    
    
    return 0;
    }
    خب بگذریم. اگر میخوای یاد بگیری خود ++C هم منابع خوبی داره .

    نظر

    صبر کنید ..
    X