counter = 0;
string line;
bool validCheck = true;
// Read the file and display it line by line.
System.IO.StreamReader file =
new System.IO.StreamReader(deckFile);
while ((line = file.ReadLine()) != null && validCheck == true)
{
if (line.Split(',')[1] == Form1.tempUsernameOut)
{
validCheck = false;
}
else
{
if (file.EndOfStream)
{
int lineCountDecks = File.ReadAllLines(deckFile).Length + 1; // Makes the variable set to the amount of lines in the deck file + 1.
string deckWriting = lineCountDecks.ToString() + "," + Form1.tempUsernameOut + ",1,,,,,,,,,,,2,,,,,,,,,,,3,,,,,,,,,,,4,,,,,,,,,,,5,,,,,,,,,,,"; // Stores what will be written in the deck file in a variable.
// Writes the contents of the variable "deckWriting" in the deck file.
StreamWriter writeFile = File.AppendText(deckFile);
writeFile.WriteLine(deckWriting);
writeFile.Close();
validCheck = false;
}
}
counter++;
}
file.Close();
ここまではこれまでの内容ですが、動作しません。ここに私がやろうとしていることがあります。テキストファイルの最初の行の2番目のセクションがtempUsernameOutと一致する場合、何もしないでください。一致しない場合は、次の行を確認してください。すべての行をチェックした後、いずれかの行の2番目のセクションがtempUsernameOutと一致しない場合は、deckWritingに格納されている行をテキストファイルの末尾に書き込んでください。 私はここからコードの基盤を得ました。ありがとう!まず2つのものが一致しない場合にファイルの末尾に書き込む
https://msdn.microsoft.com/en-GB/library/aa287535(v=vs.71).aspx
素晴らしい説明を 'に見えますが、それはwork'しません。正確に動作しないものの詳細な説明を教えていただけますか? – ViRuSTriNiTy
@ViRuSTriNiTyテキストファイルが空の場合、 "if"ステートメントはテキストファイルに書き込まれません(これが最初の問題です)。私は手動でテキストファイルに行を追加しました。 tempUsernameOutがその行の2番目のセクションと一致する場合、フォームは正常にロードされますが、tempUsernameOutがその行の2番目のセクションと一致しない場合、[このエラー](https://gyazo.com/96b14f0d8a6ba0cc9289e05de295d4f0)が表示されます。 – Headshot
@ViRuSTriNiTy今すぐ使用できました。 :) とにかくありがとう。 – Headshot