ایجاد یک فایل ترتیبی در ++c
شنبه 6 آذر 1389 11:54 PM
2 // Create a sequential file.
3 #include <iostream>
4 using std::cerr;
5 using std::cin;
6 using std::cout;
7 using std::endl;
8 using std::ios;
9
10 #include <fstream> // file stream
11 using std::ofstream; // output file stream
12
13 #include <cstdlib>
14 using std::exit; // exit function prototype
15
16 int main()
17 {
18 // ofstream constructor opens file
19 ofstream outClientFile( "clients.dat", ios::out );
20
21 // exit program if unable to create file
22 if ( !outClientFile ) // overloaded ! operator
23 {
24 cerr << "File could not be opened" << endl;
25 exit( 1 );
26 } // end if
27
28 cout << "Enter the account, name, and balance." << endl
29 << "Enter end-of-file to end input.\n? ";
30
31 int account;
32 char name[ 30 ];
33 double balance;
34
35 // read account, name and balance from cin, then place in file
36 while ( cin >> account >> name >> balance )
37 {
38 outClientFile <<account <<' ' <<name <<' '<< balance << endl;
39 cout << "? ";
40 } // end while
41
42 return 0; // ofstream destructor closes file
43 } // end main
Enter the account, name, and balance. Enter end-of-file to end input. ? 100 Jones 24.98 ? 200 Doe 345.67 ? 300 White 0.00 ? 400 Stone -42.16 ? 500 Rich 224.62 ? ^Z |
این برنامه يك فايل ترتيبي ايجاد ميكند كه ميتواند در يك سيستم دريافت كننده حساب به منظور مديريت پول بكار گرفته شود. براي هر مشتري، برنامه يك شماره حساب، نام، نامخانوادگي و موجودي را فراهم ميآورد. اطلاعات دريافتي براي هر مشتري، يك ركورد براي آن مشتري تشكيل ميدهند. در اين برنامه، شماره حساب، نشاندهنده كليد ركورد است. ايجاد و دستكاري كردن فايلها براساس ترتيب شماره حساب صورت ميگيرد. برنامه بر اين فرض كار ميكند كه كاربر، براساس ترتيب شماره حساب ركوردها را وارد ميكند. با اين همه، يك سيستم كارآمد بايد داراي قابليت مرتبسازي نيز باشد. كاربر ميتواند با هر ترتيبي، ركوردها را وارد كرده و سپس ركوردها مرتب شده و بصورت منظم در فايل نوشته شوند