Q:

Problems with reading, overwriting and showing a txt file C#

I got some problems with reading from a txt file.  My proj.  it's kind of a game, which is able to record highscores, show them and reset them aswell. 
The problem is that if I reset the highscores (via a ToolStripMenuItem from the main form), the higscores form stops updating. 
For example, a step-by-step approach:

open app (via debugger) (I mention that the .txt is clean)
play a game, record a highscore
see the highscores form, my highscore is there
reset the highscores
open the highscore form again, my highscore is still there. ( but it is cleared from the .txt file, because if I reopen the game and open
  de highscore form again, it is clean)

If I do the steps like 1-2-4-3, when i see the highscores form, it is clean. 
Some codes:
The reset button works like this:
private void resetToolStripMenuItem1_Click(object sender, EventArgs e)
    {
        DialogResult reset = MessageBox. Show("Are you sure you want to reset the highscores?", " Reset highscores", MessageBoxButtons. OKCancel, MessageBoxIcon. Warning);
        if (reset == DialogResult. OK)
        {
            File. WriteAllText("highscores.txt", string. Empty);
            MessageBox. Show("Successfully reset highscores");
        }
    }

The highscores form_load is like this:
 StreamReader inputFile = File. OpenText("highscores.txt");
        easy = 0; med = 0; hard = 0;
        while ((x = inputFile. ReadLine()) ! = null)
        {
            string[] words = x.Split('*');
            m = 0;
            foreach (string s in words)
            {
                // here comes some code which keeps one highscore in memory
            }
            // here is that one highscore sorted by difficulty
        }
        inputFile. Close();
//here are the highscores sorted

I didn't write all the code because it was too long, and I believe, irrelevant. 
Here is the writing of highscores in the txt: (when completing the game, a new form appears with a textbox and a button, here is the code:)
if (DialogResult == DialogResult. OK)
        {
            while (ok == 0)
            {
                string s = textBox1.Text;
                ok = 1;
                for (int i = 0; i < s.Length; i++)
                {
                    if (s[i] == '*') ok = 0;
                }
                if (ok == 0)
                {
                    MessageBox. Show("Your name must not contain the '*' character");
                    textBox1.Text = "";

                }
            }

            StreamWriter outputFile = File. AppendText("highscores.txt");
            outputFile. WriteLine(Form1.dificultate + "*" + Form1.secunde. ToString() + "*" + Form1.moves + "*" + textBox1.Text);
            outputFile. Close();

        }

A:

As @Hans Passant said, yhe problem was that the for(;;) loop didn't run while the txt was empty. ( after it was reset). 
while ((x = inputFile. ReadLine()) ! = null)
        {
            c++;
          //reading and keeping in memory the highscores
        }
  if(c==0) //make all the highscore labels empty, skip sorting the highscores

