2010-08-14 17 views
5

Sto tentando di aprire il file e scrivere alcuni dati di testo in esso.QFile file aperto per scrittura fallita

QFile out(":/test.txt"); 
if (!out.open(QIODevice::ReadWrite)) { 
    QMessageBox msgBox; 
    msgBox.setText(out.errorString()); 
    msgBox.exec(); 
    return; 
} 

Ma non riesce con "Errore sconosciuto". (Qt 4.6, Wnidows XP SP3)

+0

Se vuoi solo scrivere, usa WriteOnly. (Ma non funzionerà comunque con i file di risorse, come ha spiegato Roku). –

risposta

8

": /Test.txt" è un nome di un resource file incorporato per l'eseguibile e non è possibile scrivere. Cambia il nome del file ad esempio in "C: /test.txt".

+0

Alcune informazioni anche su [http://www.developer.nokia.com/Community/Wiki/How_to_write_data_to_a_file_in_Qt](http://www.developer.nokia.com/Community/Wiki/How_to_write_data_to_a_file_in_Qt). – meolic

0

Il problema è in questa linea:

qfile out (":/test.txt");

Il percorso del file è errato. Per creare il file nella stessa directory dell'eseguibile, provalo in questo modo:

QFile out ("./ test.txt");

Edit: ortografia

+1

Non sarebbe la stessa directory dell'eseguibile, ma la directory di lavoro. –

1

avete bisogno di cambiare il vostro qfile costruttore argomento

QFile out(":/test.txt");

ad un percorso corretto che potrebbe essere

QFile out("./test.txt");

o

QFile out("C:/test.txt");