c ++打印目录中GIVEN txt文件的元音

时间:2015-03-19 01:12:56

标签: c++ visual-studio

我想查询用户的文本文件名,读取该文件并计算并显示文件中的元音总数。

我在查找元音的数量时没有任何问题,但我只是不知道如何阅读该特定的文本文件。

我在考虑类似的事情:

#include <iostream>
#include <fstream>
#include <string>
#include <cstdlib>

using namespace std;

int main()
{
    ifstream inputFile;
    string fileName;
    char c;
    int nNum = 0;


    cout << "Enter the file name: ";
    getline(cin, fileName);

    // Open the file
    inputFile.open(fileName.c_str());

    // Check for successful opening
    if(inputFile.fail())
    {
       cerr << "Error Opening File" << endl;
       return(1);
    }
    while(!inputFile.eof())
    {
        inputFile.get(c);
        if (c == 'a' || c == 'e' ||  c == 'o' ||  c == 'i' || c == 'u')
            nNum++;
    }
    inputFile.close();
    cout << nNum;
    return 0;
}

当我输入时,我得到Error opening file:test.txt(它位于我的桌面上)。我做错了什么?


更新:更改while循环以避免添加字符:

 while(inputFile.get(c))
    {
        if (c == 'a' || c == 'e' ||  c == 'o' ||  c == 'i' || c == 'u')
            nNum++;
    }

仍在寻找一种解决方案,只允许我输入文件的名称(没有路径),无论它在哪里,以便我可以从中读取。

0 个答案:

没有答案