News:

The new Release 25.03 is out! You can download binaries for Windows and many major Linux distros here .

Main Menu

Cant open the input file

Started by betterlife, March 25, 2019, 08:30:21 PM

Previous topic - Next topic

betterlife

Hello! 


I learn C++ Stephen Prata books. I have a problem(probably) with a CodeBloks setting, the compiler cant open the input file which is the same folder as program.

PS: sorry for my English
#include <iostream>
#include <fstream>
#include <cstdlib>

const int SIZE = 60;

using namespace std;

int main()
{
    char filename[SIZE];
    ifstream inFile;

    cout << "Enter name of data file: ";
    cin.getline(filename, SIZE);
    inFile.open(filename, ios::in | ios::out);
    if (!inFile.is_open());
    {
        cout << "Could not open the file " << filename<< endl;
        cout << "Program terminating \n";
        exit(EXIT_FAILURE);
    }
    double value;
    double sum = 0.0;
    int count = 0;


    inFile >> value;
    while (inFile.good())
    {
        ++count;
        sum += value;
        inFile >> value;
    }
    if (inFile.eof())
        cout << "End of file reached\n";
    else if (inFile.fail())
        cout << "Input terminated by data  \n";
    else
        cout << "Input terminated for unknown reason  \n";
    if (count == 0)
        cout << "No data processed \n";
    else
    {
        cout << "Items read: " << count << endl;
        cout << "Sum: " << sum << endl;
        cout << "Average " << sum /count << endl;
    }
    inFile.close();

    return 0;
}






oBFusCATed

Project -> Properties -> Your build target -> Set a correct working directory...
(most of the time I ignore long posts)
[strangers don't send me private messages, I'll ignore them; post a topic in the forum, but first read the rules!]

betterlife


oBFusCATed

Execution working dir should be set correctly. Yours seems to be. No idea why your code doesn't work. Use a debugger to find out. As a start try with absolute paths.
(most of the time I ignore long posts)
[strangers don't send me private messages, I'll ignore them; post a topic in the forum, but first read the rules!]

betterlife

#4
I found the problem but I dont know how it works. If I removed this chceck point the program would work corect    if((inFile.good() == true));
    {
        cout << "Could not open the file " << filename<< endl;
        cout << "Program terminating \n";
        exit(EXIT_FAILURE);
    };

Do you have an idea where to find a solution? I read the documentation(C++) and did not find an answer

oBFusCATed

http://www.cplusplus.com/reference/ios/ios/good/

Just keep in mind that this is not a general programming support forum and you'll get better help at some other better place.
(most of the time I ignore long posts)
[strangers don't send me private messages, I'll ignore them; post a topic in the forum, but first read the rules!]

betterlife

I'm really grateful, thank you very much!

omlk

#7
 :'(

betterlife

Quote from: omlk on March 26, 2019, 02:34:14 AM
:'(
Hey,
i'm really sorry, i didnt see your post. Thanks for your activity :)