2016-08-09 23 views
-1

実行時に'a'と書くと、プログラムは'a'で始まるすべての名前をテキストファイルに格納して表示する必要があります。文字列と最初の文字のインデックスの呼び出し

私は何か手紙を書くときはいつも、その手紙から始まる名前が表示されるはずです。私はあなたが意味すると仮定何

string contents = File.ReadAllText("Data.txt"); 
foreach (var line in File.ReadLines("Data.txt")) ; 
+2

より良いあなたの質問..あなたが試した何 –

+0

ショーが何であるか説明してください。私はあなたの質問を編集するように努めましたが、あなたが求めていることがはっきりしていますが、あなたはまだ自分の部分に何らかの努力を見せる必要があります。 – Sayse

+0

私はテキストファイルにたくさんの名前を格納しています'a'やその他のアルファベットで始まる、どうすればいいですか? –

答えて

2

string input = Console.ReadLine(); 

var result = File.ReadLines("data.txt").Where(line => line.StartsWith(input)).ToList(); 

(たとえばa用)与えられた入力で始まる(各行は名前を表していること)、あなたの罰金からの行だけを選択したいということですあなたのFILの各ラインの場合には

Console.WriteLine(String.Join("\n", result)); 

:あなたが使用することができ一撃ですべての名前を表示するにはeが複数の名前が、あなたはこのようにそれを分割することができ含まれています(この例では名の間に分離する方法を,です):

string input = Console.ReadLine(); 

var result = File.ReadLines("data.xml") 
       .SelectMany(line => line.Split(',')) 
       .Select(name => name.Trim()) 
       .Where(line => line.StartsWith(input)).ToList(); 
+0

偉大な答え、私もそれを念頭に置いていた。私はそれを表示したいと思うので、私は追加します: 'Console.WriteLine(String.Join(" \ n "、result));' –

+0

@MongZhu - 編集を提案し、私はそれを受け入れる:)あなたはそれに値する:P –

+0

@Sayse - 本当ですが、彼がそれをどのように記述したかで、そうそうです。そうでなければ、私は分割することができるように区切りを指定する必要があります。 –

関連する問題