Datei lesen und schreiben

Dieses Thema im Forum "Programmierung" wurde erstellt von G3R_Bukkit, 19. Juli 2013.

  1. G3R_Bukkit
    Offline

    G3R_Bukkit

    Registriert seit:
    13. August 2012
    Beiträge:
    12
    Minecraft:
    G3R_Bukkit
    Hallo!

    Ich komme gerade nicht recht weiter und hoofe Ihr habt eine Idee oder könnt mir weiter helfen. Also, ich versuche, dass wenn der Server startet und das Plugin insistialisiert, überprüft wird, ob die Datei "datei.txt" vorhanden ist. Wenn nicht, dann wird sie erstellt mit einem Textinhalt. Wenn sie schon vorhanden ist, soll sie NICHT überschrieben werden.

    Mein bisheriger Code:

    Code (Text):
    1.  
    2. @Override
    3. public void onEnable()
    4. {
    5.  
    6. if(!fileExists("plugin/ORDNER","datei.txt"))
    7.         {
    8.  
    9.             try
    10.             {
    11.            
    12.                 FileWriter fw = new FileWriter("plugins/ORDNER/datei.txt", true);
    13.                 BufferedWriter in = new BufferedWriter(fw);
    14.                 BufferedWriter out = new BufferedWriter(new FileWriter("plugins/ORDNER/datei.txt", true));
    15.                 String zeile = "TEXT DER ALS STANDARD HIER STEHEN SOLL.";
    16.                 out.write(zeile);
    17.                 out.close();            
    18.                
    19.             } catch (Exception e){
    20.                 e.printStackTrace();
    21.             }
    22.            
    23.         } else     {
    24.            
    25.         }
    26. }
    27.  
    Schonmal vielen Dank für Eure Bemühungen und Ideen. :)
     
    #1
  2. Crafter6432
    Offline

    Crafter6432

    Registriert seit:
    22. Dezember 2011
    Beiträge:
    686
    Um zu prüfen ob es die Datei gibt brauchst du ein File Object,
    Code (Text):
    1.  
    2. File datei = new File(getDataFolder(),"datei.txt");
    3. if(!datei.exits()){
    4.  datei.createNewFile();
    5. }
    6. try
    7. {
    8.  
    9.  
    10. FileWriter fw = new FileWriter(datei, true);
    11. BufferedWriter in = new BufferedWriter(fw);
    12. BufferedWriter out = new BufferedWriter(new FileWriter("plugins/ORDNER/datei.txt", true));
    13. String zeile = "TEXT DER ALS STANDARD HIER STEHEN SOLL.";
    14. out.write(zeile);
    15. out.close();
    16. } catch (Exception e){
    17. e.printStackTrace();
    18. }
    19.  
    Das "true", welches du an den FileWriter übergibst legt fest ob du am Anfang anfagen willst in die Datei zu schreiben oder am Ende. So wie es jetzt im Code steht würdest du also etwas dazu schreiben und nicht alles wieder löschen.
     
    #2
  3. G3R_Bukkit
    Offline

    G3R_Bukkit

    Registriert seit:
    13. August 2012
    Beiträge:
    12
    Minecraft:
    G3R_Bukkit
    Danke

    Hey Danke. Dass ich da selber nicht drauf gekommen bin?!

    Naja, jetzt muss ich mal sehen, wie ich das "File" einbaue. Eclipse streitet gerade mit mir. Es will, dass ich eine neue "class" anlege. Entweder steh ich momentan voll auf dem Schlauch oder die lösung ist so einfach, dass ich sie nicht sehe...

    Aber deine Erklärung ist einfach TOP! Gibt es hier auch sowas wie einen "Danke-Button"?
     
    #3
  4. TimBone
    Online

    TimBone

    Zum bedanken kannst auf den Diamanten drücken und für File () brauchst du nur zu importieren. File ist ein Objekt von Java;, welches du nicht selber erstellen musst, sondern einfach nutzen kannst.
     
    #4
  5. games6471
    Online

    games6471

    Du kannst auch alternative direkt mit" import java.io.File;" schreiben, wenn deine IDE spinnt.
     
    #5
  6. G3R_Bukkit
    Offline

    G3R_Bukkit

    Registriert seit:
    13. August 2012
    Beiträge:
    12
    Minecraft:
    G3R_Bukkit
    Mein Code

    Habe noch ein wenig rumprobiert. So funktioniert es:

    Code (Text):
    1. File datei = new File(getDataFolder(),"datei.txt");
    2.             if(!datei.exists())
    3.             {
    4.                
    5.            
    6.                 try
    7.                 {
    8.  
    9.                     datei.createNewFile();
    10.                     FileWriter fw = new FileWriter(datei, true);
    11.                     BufferedWriter in = new BufferedWriter(fw);
    12.                     BufferedWriter out = new BufferedWriter(new FileWriter("plugins/ORDNER/datei.txt", true));
    13.                     String zeile = "1. Rule" + '\n' + "2. Rule" + '\n' + "3. Rule" + '\n' + "etc...";
    14.                     out.write(zeile);
    15.                     out.close();
    16.                 } catch (Exception e){
    17.                     e.printStackTrace();
    18.                 }
    19.            
    20.             }
    21.  
     
    #6