title: Overwriting txt file in java
body: <p>The code I've written is supposed to overwrite over the contents of the selected text file, but it's appending it. What am I doing wrong exactly?</p>
  
  <pre><code>File fnew=new File("../playlist/"+existingPlaylist.getText()+".txt");
  String source = textArea.getText();
  System.out.println(source);
  FileWriter f2;
  
  try {
      f2 = new FileWriter(fnew,false);
      f2.write(source);
      /*for (int i=0; i&lt;source.length();i++)
      {
          if(source.charAt(i)=='\n')
              f2.append(System.getProperty("line.separator"));
          f2.append(source.charAt(i));
      }*/
      f2.close();
  } catch (IOException e) {
          // TODO Auto-generated catch block
          e.printStackTrace();
  }           
  </code></pre>
  
  <p><b>EDIT</b></p>
  
  <p>I tried making a new temp.txt file and writing the new contents into that, deleting this text file and renaming temp.txt to this one. Thing is, the deletion is always unsuccessful. I don't think I have to change user permissions for this do I?</p>
  
  <p>Also, a part of my program lists all the files in this directory, so I'm guessing they're being used by the program and so can't be deleted. But why not overwritten?</p>
  
  <p><b>SOLVED</b></p>
  
  <p>My biggest "D'oh" moment! I've been compiling it on Eclipse rather than cmd which was where I was executing it. So my newly compiled classes went to the bin folder and the compiled class file via command prompt remained the same in my src folder. I recompiled with my new code and it works like a charm.</p>
  
  <pre><code>File fold=new File("../playlist/"+existingPlaylist.getText()+".txt");
  fold.delete();
  File fnew=new File("../playlist/"+existingPlaylist.getText()+".txt");
  String source = textArea.getText();
  System.out.println(source);
  
  try {
      FileWriter f2 = new FileWriter(fnew, false);
      f2.write(source);
      f2.close();
  } catch (IOException e) {
      e.printStackTrace();
  }           
  </code></pre>