Dove Visual Studio cerca i file txt durante l'esecuzione di operazioni di gestione dei file?
-
22-07-2019 - |
Domanda
So che è una domanda da principianti, ma ho già lavorato con Python e quando volevi semplicemente accedere a un file .txt, ad esempio, tutto quello che dovevi fare era assicurarti che il file txt fosse nella stessa directory.Ho il seguente codice C++ qui sotto ma non riesce a trovare il file Numbers.txt che ho salvato sul desktop.Tutto quello che ho nel file è una riga di numeri di tipo double.Tutto quello che voglio fare è trovare la media di tutti i numeri nel file.Il programma funziona correttamente, ma non stampa correttamente l'output.Dopo aver controllato cosa viene stampato nell'output semplicemente stampando output[0], ho scoperto che il file non sta copiando il suo contenuto nell'array.Qualcuno potrebbe chiarirmi questo piccolo problema o almeno indicarmi la giusta direzione per un buon tutorial?
int main() {
cout << "Getting File Information..." << endl;
ifstream file;
char output[100];
//int x;
file.open("Numbers.txt", ios::in); // open file
cout << "Opened File Successfully ****************" << endl;
file >> output; // empty file contents into output
cout << output; // print out contents of file
cout << "Should have printed out results by now" << endl;
//file >> x;
file.close();
return 0;
}
Soluzione
Visual Studio imposta la directory di lavoro su YourProjectDirectory \ Debug \ Bin durante l'esecuzione in modalità debug. Se il tuo file di testo è in YourProjectDirectory, devi tenere conto di tale differenza.
Il modo più semplice per farlo è includere i tuoi file di testo nel progetto e impostare la loro azione di compilazione (nella finestra Proprietà) su Contenuto.
Altri suggerimenti
Ho appena avuto questo stesso problema e non ho trovato nessuna di quelle risposte per funzionare. Poi ho ricordato quello che ho imparato molto tempo fa in OOP. Quello che devi fare è prendere quel file di testo sul desktop e trovare la cartella del progetto nei progetti di Visual Studio all'interno dei documenti del tuo computer e mettere il file di testo in quella cartella al di fuori di Visual Studio. Quindi in Visual Studio sotto i file sorgente, fare clic con il tasto destro - & Gt; aggiungi elemento esistente - > (il tuo file di testo)
:)
a proposito, ho ignorato questo thread perché questo thread diceva che era una buona idea e lo volevo aggiornato per il gusto di fare google la stessa domanda. https://meta.stackexchange.com/questions/125965/is-bumping-old- domande-ha permesso
Se stai parlando di eseguire il codice all'interno del debugger di Visual Studio tramite F5 o Debug/Avvia debug, puoi impostare la directory di lavoro del tuo programma tramite Progetto/<Nome progetto> Proprietà/Configurazione/Debug/Directory di lavoro.
Metti il tuo file di testo in una directory da qualche parte e imposta la directory di lavoro in modo che punti a quella directory.
Il percorso di lavoro è la directory del progetto.