如何在使用fstream

时间:2017-03-19 16:40:30

标签: c++

void Motherboards::add()
{
char x;
int X;
fstream InFileMB("Motherboard_List.txt", ios::in | ios::out | ios::app);
if (!InFileMB)
{
    cerr << "Error: Opening File Failed !!";
}
else
{
MotherBoardEntry:
    system("cls");
    cout << " Enter the name of the Manufacturer :\n";
    string MB__Name_Manufacturer;
    cin >> MB__Name_Manufacturer;

    cout << " Enter Chipset Type :\n";
    string MB_Chip;
    cin >> MB_Chip;

    cout << "Enter Name of the board exactly as it`s written on the box :\n";
    string MB_Name;
    cin >> MB_Name;

    cout << "Enter 3 features of this board :\n";
    cout << "1.) ";
    string MB_Feature1;
    cin >> MB_Feature1;
    cout << endl;
    cout << "2.) ";
    string MB_Feature2;
    cin >> MB_Feature2;
    cout << endl;
    cout << "3.) ";
    string MB_Feature3;
    cin >> MB_Feature3;
    cout << endl;

    cout << "Enter Price :\n";
    string MB_Price;
    cin >> MB_Price;

    system("cls");
    cout << "Please check the details before conformation :\n";
    cout << "Motherboard :\n";
    cout << MB__Name_Manufacturer << endl;
    cout << MB_Chip << endl;
    cout << MB_Name << endl;
    cout << "Features :\n";
    cout << "1.) " << MB_Feature1 << endl;
    cout << "2.) " << MB_Feature2 << endl;
    cout << "3.) " << MB_Feature3 << endl;
    cout << "Price :\n";
    cout << MB_Price;
    cout << "\n\n Do You Want To Add The Following Motherboard To Your Stock List ? (y/n)";
    cin >> x;
    system("cls");

    switch (x)
    {
    case 'y':
        InFileMB << "Motherboard :\n" << MB__Name_Manufacturer << endl << MB_Chip << endl << MB_Name << endl << "Price :\n" << MB_Price << endl << "Features :\n" << "1.) " << MB_Feature1 << endl << "2.) " << MB_Feature2 << endl << "3.) " << MB_Feature3 << endl << endl;
        break;

    case 'Y':
        InFileMB << "Motherboard :\n" << MB__Name_Manufacturer << endl << MB_Chip << endl << MB_Name << endl << "Price :\n" << MB_Price << endl << "Features :\n" << "1.) " << MB_Feature1 << endl << "2.) " << MB_Feature2 << endl << "3.) " << MB_Feature3 << endl << endl;
        break;

    case 'n':
        system("cls");
        system("pause,2");
        cout << " Enter ( 1 ) to try to enter the data again or ( 2 ) to go back to item selection list .. ";
        cin >> X;
        switch (X)
        {
        case 1:
            goto MotherBoardEntry;
            break;
        case 2:
            break;
        }
        break;

    case 'N':
        system("cls");
        system("pause,2");
        cout << " Enter ( 1 ) to try enter the data again or ( 2 ) to go back to item selection list .. ";
        cin >> X;
        switch (X)
        {
        case 1:
            goto MotherBoardEntry;
            break;
        case 2:
            break;
        }

        break;
    }

}

 }

当我输入数据时,我将在我提供的快照中显示,当我输入数据时没有任何空格一切顺利但是当我输入带空格的数据时我不能填写某些数据由于某种原因因为我不是初学者,所以我不知道。你能否告诉我确切的更新地点和更新内容。

[在此输入图片说明] [1] [在此处输入图像说明] [2]

你可能已经在图片中注意到我在i7和4790k之间放了一个空格,我无法填写输入处理器名称的信息,命令窗口将我直接转到下一行。

0 个答案:

没有答案