Hallo zusammen,
beim Aufruf eines Programmes via Konsole möchte ich gleich die zu benutzende Datei folgendermaßen mitgeben:
C:> sas.exe < orion.dat
Da ich den Dateinamen im Programm verwenden möchte, will ich das Ganze via
Environment.CommandLine auslesen und entsprechend in einem String speichern.
Leider wird mit hier nur sas.exe ausgegeben. Wie komme ich an den Part hinter dem < ?
Danke im Voraus.
Du kannst auf den Parameter args zugreifen zum Beispiel
static void Main(string[] args)
{
if (args[0] != null)
string file = args[0];
}
Hier ist ein gutes Beispiel C# main args
Hallo indeopax,
durch die Dateiumleitung mittels '<' wird dieser Parameter schon direkt von der Konsole verarbeitet, so daß dann in deinem Fall keine Parameter an das Programm übergeben werden.
Oder möchtest du die Datei selbst verarbeiten, dann rufe einfach das Programm so auf:
sas.exe orion.dat
und greife mit dem vom Vorposter beschriebenen Code darauf zu.
Hi Th69,
im folgenden Programm lese ich die Datei mittels Streamreader aus,
StreamReader sr = new StreamReader(@"C:\orion.dat");
Wie könnte ich auf die von der Konsole verarbeitete Datei zugreifen ?
Hallo indeopax,
Console.In oder Console.OpenStandardInput().
Bitte schau für sowas in die MSDN Dokumentation, bzw. suche im Netz nach Lösungen. Offensichtlich bist du nicht der erste, dem sich diese Aufgabe stellt. Beachte insofern [Hinweis] Wie poste ich richtig? Punkt 1.1.1 und 1.1.
herbivore