2016-09-14 9 views
0

メインに次のコードが書かれている:C#はメインの出力として.txtファイルをどのように認識しますか?

using System; 
using System.Collections.Generic; 
using System.Linq; 
using System.Text; 
using System.Threading.Tasks; 
using System.IO; 
namespace text_test 
{ 
class Program 
{ 
    static void Main(string[] args) 
    { 
     txt_program tt = new txt_program(); 
     string[] output_txt = tt.txt; 
    } 
} 
} 

のエラーが表示されます。

を「[]文字列」非デリゲート型にメソッドグループ「TXT」を変換することはできません述べました。

string[]の代わりに何を書きますか?呼び出されるコードは次のようになります。

(上記と同じシステムコール)

namespace text_test 
{ 

class txt_program 

{ 
    public void txt(string[] args) 
    { 
     // Take 5 string inputs -> Store them in an array 
     // -> Write the array to a text file 

     // Define our one ad only variable 
     string[] names = new string[5]; // Array to hold the names 

     string[] names1 = new string[] { "max", "lars", "john", "iver", "erik" }; 

     for (int i = 0; i < 5; i++) 
     { 
      names[i] = names1[i]; 
     } 

     // Write this array to a text file 

     StreamWriter SW = new StreamWriter(@"txt.txt"); 

     for (int i = 0; i < 5; i++) 
     { 
      SW.WriteLine(names[i]); 
     } 

     SW.Close(); 
    } 
} 
} 
+1

おそらく' tt.txt() '。 txt'? @HimBromBeereの編集: 'tt.txt(args)' –

+0

エラーを生成します 'txt_program-txt(string [])'の必須の仮引数 'args'に対応する引数はありません。これは、メインがtxtからの出力が.txt-ファイルであることを理解していないようです。 @ KeyurPATEL –

+0

あなたは実際に何をしたいですか? 'txt'関数は引数' args'を受け取りますが、決して使用しません。さらに、何も返しません( 'void')ので、それを' string [] 'に代入することはできません – Prisoner

答えて

1

あなたはちょうどあなたがストリームに分離されたクラスを主張する場合

static void Main(string[] args) { 
    string[] namess = new string[] { 
    "max", "lars", "john", "iver", "erik" }; 

    File.WriteAllLines(@"txt.txt", names); 
} 

を提出する配列を書きたい場合は、次の代わりに `TTの

class txt_program { 
    //() You don't use "args" in the method 
    public void txt(){ 
    string[] names = new string[] { "max", "lars", "john", "iver", "erik" }; 

    // wrap IDisposable (StreamWriter) into using 
    using (StreamWriter SW = new StreamWriter(@"txt.txt")) { 
     // do not use magic numbers - 5. 
     // You want write all items, don't you? Then write them 
     foreach (var name in names) 
     SW.WriteLine(name); 
    } 
    } 
} 

... 

static void Main(string[] args){ 
    // create an instance and call the method 
    new txt_program().txt(); 
} 
0

公共ボイドTXT(文字列[]引数)なし必要 {}

削除引数 "列[]引数"、。

このような呼び出し方法 tt.txt();

voidメソッドは値を返しません。

文字列配列を取得しようとしないでください。

関連する問題