Mein Ziel ist es, eine beliebige Textdatei an eine Exe zu senden, die ein Build eines C++ Projekts ist. Im C++ Projekt möchte ich die Datei lesen, die an die exe gesendet wurde. Daher denke ich, dass ich den Pfad der gesendeten Datei an die Anwendung (exe) übergeben muss.Windows, C++: Datei an exe (C++ Lösung) senden und Daten aus der gesendeten Datei lesen
My C++ Code [funktioniert!]:
#include "stdafx.h"
#include <string.h>
#include <iostream>
#include <fstream>
#include <string>
using namespace std;
int _tmain(int argc, _TCHAR* argv[])
{
std::string readLineFromInput;
ifstream readFile("input.txt"); // This is explizit.
// What I need is a dependency of passed path.
getline(readFile, readLineFromInput);
ofstream newFile;
newFile.open("output.txt");
newFile << readLineFromInput << "\n";
newFile.close();
readFile.close();
}
Mein Windows-Konfiguration:
In dem folgenden Pfad ich eine Verknüpfung zu der exe erstellt (Build von C++ Projekt): C: \ Benutzer {Benutzer} \ AppData \ Roaming \ Microsoft \ Windows \ SendTo
Frage:
ich r wollen Klicken Sie auf eine beliebige Textdatei und übergeben Sie sie (SendTo) an die exe. Wie kann ich den Pfad der gesendeten Datei als Argument an die Anwendung übergeben, sodass die Anwendung die gesendete Datei lesen kann?
Wenn der Pfad als Argument übergeben wird die Codezeile so sein sollte, ich denke:
ifstream readFile(argv[1]);
Vielen Dank!
David
SendTo bereits tut genau dies. Hast du es getestet und Probleme? – smead
Ich habe es nicht getestet, weil argv [1] mir zu komisch schien. Wie "Remy Lebeau" erklärte, muss ich eine String-Behandlung durchführen, um einen interpretierbaren Pfad zur Quelldatei zu erhalten. Also, 'ifstream readFile (argv [1]); 'macht genau das, was ich will. Als nächstes ist der Inhalt zu verstehen und einige String-Handhabung. Vielen Dank. –