V
vsgdp
Hello,
I'm wondering why this outputs garbage:
std:fstream outFile("test.txt");
outFile << 1.0f << std::endl;
outFile << filename << std::endl;
outFile << 2.0f << std::endl;
std::string s;
float x;
std::ifstream inFile("test.txt");
inFile >> x;
std::cout << x << std::endl;
std::getline(inFile, s, '\n');
std::cout << s << std::endl;
inFile >> x;
std::cout << x << std::endl;
and why this works:
outFile << filename << std::endl;
outFile << 1.0f << std::endl;
outFile << 2.0f << std::endl;
std::string s;
float x;
std::ifstream inFile("test.txt");
std::getline(inFile, s, '\n');
std::cout << s << std::endl;
inFile >> x;
std::cout << x << std::endl;
inFile >> x;
std::cout << x << std::endl;
I think the former doesn't work because the getline() is reading the same
line as the previous inFile >> read. How can I get it to skip to the next
line, if that is indeed the problem.
I'm wondering why this outputs garbage:
std:fstream outFile("test.txt");
outFile << 1.0f << std::endl;
outFile << filename << std::endl;
outFile << 2.0f << std::endl;
std::string s;
float x;
std::ifstream inFile("test.txt");
inFile >> x;
std::cout << x << std::endl;
std::getline(inFile, s, '\n');
std::cout << s << std::endl;
inFile >> x;
std::cout << x << std::endl;
and why this works:
outFile << filename << std::endl;
outFile << 1.0f << std::endl;
outFile << 2.0f << std::endl;
std::string s;
float x;
std::ifstream inFile("test.txt");
std::getline(inFile, s, '\n');
std::cout << s << std::endl;
inFile >> x;
std::cout << x << std::endl;
inFile >> x;
std::cout << x << std::endl;
I think the former doesn't work because the getline() is reading the same
line as the previous inFile >> read. How can I get it to skip to the next
line, if that is indeed the problem.