Pourquoi mon fichier de sortie vide dans ce programme simple en utilisant std::fstream?

J'essaie de comprendre comment lire les informations de la forme d'un fichier d'entrée et d'écrire des données dans un fichier de sortie. Je comprends comment lire un fichier et affichage de son contenu, mais je NE comprends pas comment écrire dans un fichier ou d'afficher son contenu. Mon programme fonctionne très bien mais quand je vérifie ma sortie de fichier txt, il n'y a rien dedans! Que pouvais-je fait de mal?
le fichier d'entrée contient 3.1415 2.718 1.414.

#include <iostream>
#include <fstream>
#include <iomanip>

using namespace std;

int main()
{
float fValue;
fstream inputFile;
ofstream outputFile;

inputFile.open("C:\\Users\\David\\Desktop\\inputFile.txt");
outputFile.open("C:\\Users\\David\\Desktop\\outputfile.txt");

cout << fixed << showpoint;
cout << setprecision(3);
cout << "Items in input-file:\t " << "Items in out-put File: " << endl;

inputFile >> fValue;    //gets the fiest value from the input

while (inputFile) //single loop that reads(from inputfile) and writes(to outputfile)    each number at a time.
{
    cout << fValue << endl; //simply prints the numbers for checking.
    outputFile << fValue << ", "; //writes to the output as it reads numbers from the input.
    inputFile >> fValue; //checks next input value in the file
}



outputFile.close();
inputFile.close();


int pause;
cin >> pause;

return 0;
}
  • Que le code est erroné, puisque vous avez cout << fValue deux fois sans inputFile >> fValue entre. Je serais prêt à parier que le fichier n'a pas pu ouvrir
  • Vous avez oublié de vérifier le code d'erreur après l'ouverture d'un fichier! 🙂 Il ne réussit pas toujours!
  • Votre code "fonctionne" pour moi (il écrit la première valeur deux fois).
InformationsquelleAutor DEdesigns57 | 2011-09-30