title: How To Overwrite A File If It Already Exists?
body: <p>I'm making a music player. It has 2 forms; one is the main area where you play music. The second form has a CheckedListBox where you select the mp3s you want.
  When I click a button, it saves the selection in a .txt file so I can access them in the first form, where I'll put the strings into the paths for music player to find the files.</p>
  
  <p>This is the code in my second form, where I save the selected songs into .txt files.</p>
  
  <pre><code>private void selectbtn_Click(object sender, EventArgs e)
  {
      if (File.Exists(@"C:\Users\Me\Desktop\JAM_MACHINE\JAMS\record.txt"))
      {
         File.WriteAllText(@"C:\Users\Me\Desktop\JAM_MACHINE\JAMS\record.txt", String.Empty);
      }
  
      string[] checkedtitles = new string[checkedListBox1.CheckedItems.Count]; 
  
      for (int ii = 0; ii &lt; checkedListBox1.CheckedItems.Count; ii++)
      {
          checkedtitles[ii] = checkedListBox1.CheckedItems[ii].ToString();
      }
      string selectedSongs = String.Join(Environment.NewLine, checkedtitles); 
  
      songRecord.writeRecord(selectedSongs); //I initialised the class containing streamwriter/reader, and called it songRecord
      this.Close();   
  }
  </code></pre>
  
  <p>The problem is, whenever I close the program and open it again, I can't rewrite/clear the .txt file. It just adds on to the existing file. Is there something I'm not doing right?</p>
  
  <p>Here is my streamreader/writer codes. I'm pretty sure I closed it after running too, but perhaps somebody can figure out what's wrong:</p>
  
  <pre><code>namespace songss
  {
      class DataRecord
      {
      public void writeRecord(string line)
      {
          StreamWriter sw = null;
          try
          {
              sw = new StreamWriter(@"C:\Users\Me\Desktop\JAM_MACHINE\record.txt", true);
              sw.WriteLine(line);
          }
          catch (FileNotFoundException)
          {
              Console.WriteLine("Error: File not found.");
          }
          catch (IOException)
          {
              Console.WriteLine("Error: IO");
          }
          catch(Exception)
          {
              throw;
          }
          finally
          {
              if (sw != null)
                  sw.Close();
          }
          }
  
   public void readRecord()
      {
          StreamReader sr = null;
          string myInputline;
          try
          {
              sr = new StreamReader(@"C:\Users\Me\Desktop\JAM_MACHINE\record.txt");
              while ((myInputline = sr.ReadLine()) != null) ; //readline reads whole line
              Console.WriteLine(myInputline);
          }
          catch (FileNotFoundException)
          {
              Console.WriteLine("Error: File not found");
          }
          catch(IOException)
          {
              Console.WriteLine("Error: IO");
          }
          catch (Exception)
          {
              throw;
          }
          finally
          {
              if (sr != null)
                  sr.Close();
          }
      }
      }
      }
  </code></pre>