2016-06-16 10 views
-2

私はファイルからデータを抽出するプログラムを持っています。これは、ファイルをフォルダでスキャンするサードパーティのスケジューラで実行されます。コマンドライン引数の文字列を分割する

FILE1.TXT FILE2.TXTしかし、ファイル名がFile1のあるようにそれを処理する:発行イムたが、それは一つの大きなファイルの例であるかのように、フォルダ内のすべてのファイルを読み込み、それを読んでいます。 txtFile2.txt

私はコマンドライン引数で文字列を分割して使用することに決めました。

私はそれは、文字列の分割とは何か、その後、foreachループを持って知っているが、私の人生のために、私はそれがここに

を仕事を得るカントであるスプリット

class Program 
{ 
    static void Main(string[] args) 
    { 
     string input = ""; 
     string output = ""; 

     try 
     { 
      if (args.Length > 0) 
      { 
       foreach (string s in args) 
       { 
        Console.WriteLine(s); 
       } 
       input = args[0]; 
       output = args[1]; 
      } 
      else 
      { 
       Console.WriteLine("Input"); 
       input = Console.ReadLine(); 
       Console.WriteLine("Output Location"); 
       output = Console.ReadLine(); 
      } 
をしようとする前に、私の元のコード

これをどのように並べ替えることができますか?

+0

plsは何が成果物ではなく、達成したいことを教えてください。プログラムの引数はスペースで区切る必要があります。この* File1.txtFile2.txt *は1つの引数として解釈されます – lokusking

+0

@lokusking質問を読む – Nonagon

答えて

1

このコードはうまくいくはずですが、すべてのファイルが拡張子が.txtのtxtファイルであり、1つの引数しか持たないことを前提としています(すべてのファイルが1つの文字列に結合されるため、 1つの議論)。

public static void Main(string[] args) 
{ 
    string input = args[0]; 
    List<string> files = input.Split('.').ToList<string>(); 
    for (int i = 0; i < files.Count - 1; i++) 
    { 
     files[i] = files[i].Replace("txt",""); 
     files[i] += ".txt"; 
    } 
    for (int i = 0; i < files.Count - 1; i++) 
    { 
     Console.WriteLine(files[i]); 
    } 
    return; 
} 
+0

はい、すべてのファイルは同じ形式ですが、テキストファイルで再生しているものはまだわかりません。それは私が考えていたアイデアだ。私はこれをできるだけお試しください。返信ありがとうございます – Nonagon

+0

問題ありません、すべてがうまくいくことを願っています。 – ygongdev

関連する問題