2017-04-08 5 views
1

テキストファイルから合成生徒のマークを計算する必要があるという問題があります。最初の行のマークの重み、次の行の評価する学生の数、そして次の行が学生のマークです。このパターンは、大きな分離を伴わずにファイルを通して繰り返されます。StreamReaderを使用して他の行で定義された行を読み取る

明確にするために、テキストファイルと問題がある私は、次のコードを使用して、StreamReaderを使用して新しいオブジェクトを作成しようとしたhere:

using (StreamReader sr = new StreamReader("DATA10.txt")) { 
    blahblahblah; 
} 

DATA10.txtは同じフォルダ内にありますプログラム。

しかし、MSDNなどの例では、「文字列」から「System.IO.Stream」に変換できません。私は間違って何をしていますか?

最終的には、2番目の行の値を取得し、streamreaderを使用してその量の行を読み込みます。その後、次のデータセットに対してプロセス全体を繰り返します。

私は本当にそれがその質問と重複しているとは思わないし、ここでの回答は分かりやすい形で表現されています。

+0

を、あなたは現在、 '')が欠落しています。 (StreamReader sr = new StreamReader( "DATA10.txt")) ' –

+0

申し訳ありませんが、私はVSに私のための閉じ括弧を追加するのに慣れています。あなたが指摘した適切な行を使っています。ごめんなさい。 – James

+0

.exeファイルがある場所にこのファイルを配置しましたか? – titol

答えて

0

StreamReaderがで取るために仮定されるために、ソリューションエクスプローラで「DATA10.txt」の「コピー出力ディレクトリに」プロパティを設定する必要がありますストリームのパラメータとしてもパラメータとしてStreamを取り込むことができ、FileModeも指定する必要があります。

代わりに、このような何か試してください:あなたのコードスニペットで

public static void Main() 
{ 
    string path = @"c:\PathToFile\DATA10.txt"; 

    try 
    {   
     using (FileStream fs = new FileStream(path, FileMode.Open)) 
     { 
      using (StreamReader sr = new StreamReader(fs)) 
      { 
       //blahblah  
      } 
     } 
    } 
    catch (Exception e) 
    { 
     Console.WriteLine("The process failed: {0}", e.ToString()); 
    } 
} 

MSDN Reference

+1

ありがとうございました。私はC#の初心者です。私は約1ヶ月で競争しています。それはすべてここから上り坂を見ています:) – James

0

ます。また、「常にコピー」

using System; 
    using System.Collections.Generic; 
    using System.IO; 
    using System.Linq; 
    using System.Text; 
    using System.Threading.Tasks; 

    namespace _07___ReadTextFileWhile 
    { 
     class Program 
     { 
      static void Main(string[] args) 
      { 
       StreamReader myReader = new StreamReader("DATA10.txt"); 

       string line = ""; 

       while (line != null) 
       { 
        line = myReader.ReadLine(); 
        if (line != null) 
         Console.WriteLine(line); 
       } 

       myReader.Close(); 
       Console.ReadKey(); 

      } 
     } 
    } 

enter image description here

+0

それでも、まったく同じエラーが表示されます。 "'string'から 'System.IO.Stream'に変換できません" – James

+0

"DATA10.txt"ファイルを共有できますか? –

+0

申し訳ありませんが、ファイルをアップロードして投稿を編集します。リンクされたファイルに含まれていなかったことを忘れていました.. 編集されました。 – James

関連する問題