エンターテイナーとそのパフォーマンス スコアに関するデータを含む入力ファイルがあります。例えば、
1. Bill Monohan from North Town 10.54
2. Mary Greenberg from Ohio 3.87
3. Sean Hollen from Markell 7.22
行 (スコア) から最後の数字を取得し、それに対していくつかの計算を実行してから、古いスコアを新しいスコアに置き換えたいと考えています。私がやろうとしていることの簡単なコードは次のとおりです。
string line;
StreamReader reader = new StreamReader(@"file.txt");
//Read each line and split by spaces into a List.
while ((line = reader.ReadLine())!= null){
//Find last item in List and convert to a Double in order to perform calculations.
List<string> l = new List<string>();
l = line.Split(null).ToList();
string lastItem = line.Split(null).Last();
Double newItem = Convert.ToDouble(lastItem);
/*Do some math*/
/*Replace lastItem with newItem*/
System.Console.WriteLine(line); }
新しい行を書いても何も変わりませんが、行末で lastItem を newItem に切り替えたいと思います。私は使用してみました:
l[l.Length - 1] = newItem.ToString();
しかし、私は運がありません。このような文字列リストの最後の値を置き換える最良の方法が必要です。私はこれを数時間行ってきましたが、ロープの終わりに近づいています。C#マスターを助けてください!