2011-01-17 11 views
18

simplemente quiero escribir (adjuntar) a un archivo de registro. Lo busqué aquí:
http://www.cplusplus.com/reference/iostream/fstream/open/Cómo adjuntar a un archivo con Fstream Fstream :: aplicación bandera parece no funcionar

por lo que este es lo que hice

#include <fstream> 

fstream outfile; 

//outfile.open("/tmp/debug.txt"); // works, simply for writing 
outfile.open("/tmp/debug.txt", fstream::app); // does nothing 

outfile << "START" << endl; 

outfile.close(); 
+0

También puede usar ofstream, su código podría funcionar con eso. – isarandi

Respuesta

28

fstream::app|fstream::out en lugar de fstream::app. app no tiene sentido sin especificar out (se podría pensar que debería haber implicado out, pero no es así).

+7

fstream proporcionará los valores predeterminados si no proporciona un argumento, pero si proporciona uno (como la aplicación) no lo hará automáticamente O el suyo con los predeterminados. – CashCow

+0

'fstream :: app' no significa necesariamente anexar salida, pero' ofstream :: app' significa append de salida (debido a 'ofstream'). En otras palabras, es el tipo de flujo, no el modo de apertura. –

Cuestiones relacionadas