2016-07-18 6 views
-3

作業員に関する情報をテキストファイルに入力する必要があります。次に、ファイルから読み込み、ユーザーが探しているIDを検索する必要があります。たとえば、私のファイルにはID 1,2,3が含まれていますが、ID 3を見つけようとすると、このワーカーのすべての情報がコンソールに書き込まれます。そうでなければ、テキストを書きます。ワーカーが見つかりません。あなたが検索可能にテキストファイルを作成したい場合は、それはとてもカンマ/ TAB 状のセパレータで区切られるべきC#とファイルストリームのテキストファイルとを比較する

using System; 
using System.IO; 
class Program 
{ 
    static void Main(string[] args) 
    { 
     string file = "C:\\Temp\\registery.txt"; 
     FileStream fOutStream = File.Open(file, FileMode.Append, FileAccess.Write); 
     StreamWriter sWriter = new StreamWriter(fOutStream); 
     int[] id = {  1, 2, 3  }; 
     string[] name = {  "John", "Carl", "Thomas"  }; 
     float[] salary = {  3500, 4800, 2100  }; 
     for (int i = 0; i < id.Length; i++) 
     { 
      sWriter.WriteLine(id[i] + " " + name[i] + " " + salary[i]); 
     } 
     sWriter.Flush(); 
     sWriter.Close(); 
     FileStream fInStream = File.OpenRead(file); 
     StreamReader sReader = new StreamReader(fInStream); 
     int id2; 
     Console.WriteLine("Type worker's id"); 
     id2 = int.Parse(Console.ReadLine()); 
     bool a; 
     a = sReader.ReadToEnd().Contains(id2); 
     Console.WriteLine(a); 
     sReader.Close(); 
    } 
} 
+4

?あなたはどこにいるのですか?あなたは何をしたいのか書きましたが、あなたが何をやるのを止めているのですか? – germi

+0

私はそれを行う方法がわからないと問題になります。私はいくつかのアイディアを持っていました。私がID3を検索しようとしたときに1つのアイデアがうまくいかず、給与セクションにも数字が含まれていました。 – HateB

+0

私はコードに一番良いアイデアを追加しました。私は今のところやりたいと思っていたように、それは現時点で真または偽を印刷します。 – HateB

答えて

0

私は自分の問題に自分自身で解決策を見つけ、十分にうまくいった。それは最善の解決策ではないかもしれません。私は、ブール物事を削除し、私はこれで全部を置き換える:

string line; 
    while ((line = sReader.ReadLine()) != null) 
    { 
     if (line.Contains("id: " + id2)) 
     { 
      Console.WriteLine(line); 
      break; 
     } 
     else if ((line = sReader.ReadLine()) == null) 
     { 
      Console.WriteLine("Worker not found with id " + id2); 

     } 
    } 

そして、私はこのように見えるように、forループの上部を固定:だから

sWriter.WriteLine("id: " + id[i] + " name: " + name[i] + " salary: " + salary[i]); 
0

はあなたのコードを変更:

sWriter.WriteLine(id[i] + "," + name[i] + "," + salary[i]); 

idでテキストファイルを検索するには/name/..whateverおよび使用AND/OR、あなたはここで説明する方法で使用することができます:BTW

How would I convert data in a .txt file into xml? c#

を:再要因SEでファイルを作成するために、あなたのコードをparateメソッド、および他のメソッドでの検索が含まれます。

関連する問題