ハングマン ゲームのプレーヤーのスコアを含むテキスト ファイルを作成しようとしています。テキスト ファイルの構造は、次の順序に従う必要があります。番号。名前のスコア (例: 1. Helen 2500)。結果を比較して並べ替えることができるように、名前とスコアの特定の配列にデータを導入できるように行を分割しようとしました (数字は同じままです: 1、2、3 など)。動作しません。エラーは発生しませんが、配列 v[] の使い方が間違っているため、ビルドはこの関数で停止します。それを機能させるために私に何をするように提案しますか?
[コード]
private void New_Score(int score)
{
int k=0, i;
char[] sep = new char[] { ' ', '\n', '.' };
string line, aux1, aux2;
string n=null, s=null;
n = textBox1.Text;
s = Convert.ToString(score);
string[] part=null, nr=null, name=null, result=null;
file_path = @"D:\Visual Studio 2005\Projects\WindowsApplication2\WindowsApplication2\Resources\HighScore.txt";
StreamReader f = new StreamReader(file_path);
while ((line = f.ReadLine()) != null)
{
part = null;
v = null;
part = line.Split(sep);
i=0;
foreach(string c in part)
{
v[i]= c;
i++;
}
nr[k] = v[0];
name[k] = v[1];
result[k] = v[2];
}
for (i = 0; i < k; i++)
if (string.CompareOrdinal(s,result[i]) == 1)
{
aux1 = s;
s = result[i];
result[i] = aux1;
aux2 = n;
n = name[i];
name[i] = aux2;
}
for (i = 0; i < k; i++)
{
line = nr[i] + ". " + name[i] + " " + result[i] + "\n";
File.WriteAllText(file_path, line);
}
}
[/コード]