私は基本的に、そのファイルを上書きせずに、テキスト ファイルの末尾に 1 つの数値を追加しようとしています。現在、ファイルから読み取り、そのデータを文字列に格納してからリストに追加し、新しい整数をリストに追加してからファイルに書き込もうとしました。
M = @"C:\Mental.txt";
StreamReader content = new StreamReader(M, Encoding.Default);
string m = content.ReadToEnd();
List<int> num =
new List<int>(m.Split((string[])null, StringSplitOptions.RemoveEmptyEntries)
.Select(int.Parse));
num.Add(4);
content.Close();
content.Dispose();
var s = num.Select(i => i.ToString()).ToArray();
File.WriteAllLines(M,s);
コードの書き方や機能しない理由について他に提案があれば、よろしくお願いします。このコードのさまざまなバリエーションを試しましたが、出力がファイルと同じデータである場合に同じ問題が発生し続けますが、1 つだけを追加したい場合に多数の '4' が追加されます。
私のファイルが以前に含まれていた場合のIE:
1
2
3
それは今含まれます
1
2
3
4
4
4
4
4
4
4
4
...etc