PDA

View Full Version : فایلها در ++C



mehdi58
پنج شنبه 18 خرداد 1385, 22:49 عصر
سلام

کسی از دوستان لطف می کنه اگه کد زیر رو داره به من بده :

من میخوام بتونم توی یه فایل بنویسم ( اطلاعاتی مثل نام دانش آموز و نمره) و اینکه بتونم عمل جستجو رو توی اون فایل انجام بدم که مثلا اگه نام طرف توی فایل بود کل نمراتش رو نشون بده .

ممنون میشم اگه کمک کنین چون چند سال پیش c و ++c کار کردم و الان اصلا تمرکز و تسلط روی اون ندارم .

حتما با ++C باشه

mehdi58
جمعه 19 خرداد 1385, 14:21 عصر
کسی از دوستان می تونه تا امروز کمکی بکنه.
ممنون میشم

mehdi58
جمعه 19 خرداد 1385, 17:01 عصر
سلام
من تونستم کد زیر رو ردیف کنم که با اون می تونم نام و فامیل و درس و نمره طرف رو بگیرم و توی فایل ذخیره کنم و اطلاعات داخل فایل رو هم بخونم اما توی قسمت جستجو مشکل دارم چون میخوام وقتی یه اسم ( البته بعدا درستش می کنم و کد دانش آموزی اش می کنم ) رو بدم تو فایل بگرده ببینه که آیا این فرد توی فایل هست یا نه بعد اگه بود لیست تمام درسها رو نشون بده که کاربر یکی از اونها رو انتخاب کنه و نمره اون فرد به اینصورت ویرایش بشه .
قسمت قرمز رنگ کد رو اشکال دارم که البته خیلی ناقصه اما بقیه کد درست کار میکنه .

#include <iostream.h>
#include <fstream.h>
#include <conio.h>
#include <string.h>
class student {
char name[21];
char family[21];
char num[2];
public:
student() { }
student(char *n, char *f, char *nm)
{
strcpy(name, n);
strcpy(family, f);
strcpy(num, nm);
}
friend ostream &operator<<(ostream &stream, student ob);
friend istream &operator>>(istream &stream, student &ob);
};
//*************
ostream &operator<<(ostream &stream, student ob)
{
stream << ob.name << " ";
stream << ob.family << " ";
stream << ob.num << '\n';
return stream;
}
//*****************
istream &operator>>(istream &stream, student &ob)
{
cout << "Enter name:";
stream >> ob.name;
cout << "Enter family:";
stream >> ob.family;
cout << "Enter number:";
stream >> ob.num;
cout << endl;
return stream;
}
//***********
int main()
{
student ob;
char ch;
fstream pb("student.dat", ios::in | ios::out | ios::app);
if(!pb) {
cout << "Cannot open phone.dat file:";
cin.get();
return 1;
}
for(;;) {
do {
clrscr();
cout << "1. Enter data\n";
cout << "2. Display \n";
cout << "3. exit\n";
cout << "4. search\n" ;
cout << "Enter a select(1-4) :";
cin >> ch;
} while (ch < '1' || ch > '4');
switch(ch) {
case '1' :
cin >> ob;
cout << "Entry is :";
cout << ob; //show on screen
pb << ob; //write to disk;
getch();
break;
case '2' :
char c;
pb.seekg(0, ios::beg);
while(!pb.eof()) {
pb.get(c);
if(!pb.eof())
cout << c;
}
pb.clear(); //reset eof
cout << endl;
getch();
break;
case '3':
pb.close();
return 0;
case '4':
char *uname;
cout<<"enter a name:\n";
cin>>uname;
pb.seekg(0,ios::beg);
while (!pb.eof()){
if (uname==pb.get(c))
{
cout<<"okkkkkkkkkkkk";
}
if(!pb.eof())

}
pb.clear(); //reset eof
cout << endl;
getch();
break; } //end of switch
} //end of for
}

mehdi58
دوشنبه 22 خرداد 1385, 12:34 عصر
ای کاش یه نفر حداقل این پست رو می خونید !!!!!!!!!!!

BitMap
یک شنبه 11 تیر 1385, 20:21 عصر
آقا ناراحت نباش من دارم نگاهش می کنم