Problem mit dem Beschreiben einer Datei (BlueJ)

Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

  • Problem mit dem Beschreiben einer Datei (BlueJ)

    Hallo, ich bin neu hier und hab ein riesen Problem mit meinem BlueJ Projek und bräuchte dringend hilfe. Ich muss in Informatik ein Spiel programmieren.
    Es funktioniert auch alles bis auf das Schreiben eines Strings auf eine Textdatei,die ich als Highscore verwenden möchte.
    In der folgenden Klasse Cschreiben befindet sich die methode schreiben(), welche eine Textdatei erzeugt und beschreibt. Die Methode schreiben funktioniert, bzw. erzeugt eine Textdatei und beschreibt diese. Wenn ich nun aber die Klasse Cschreiben ins Applet einbinde und die methode im actionListener aufrufe, wird diese nicht ausgeführt. Auch nach langer Fehlersuche bin ich nicht auf die Lösung des Problems gekommen und wende mich darum an euch.


    Die Klasse Cschreiber:

    import java.io.*;

    public class Cschreiber
    {
    String inhalt;
    public File file;

    public Cschreiber()
    {
    inhalt =new String("hallo");
    }


    public void schreiben() {
    try {

    inhalt = "hallo";
    file = new File("Daten/Test.txt");
    PrintWriter writer = new PrintWriter(file);

    writer.write(inhalt);



    writer.close();



    } catch (FileNotFoundException e) {

    e.printStackTrace();
    }
    }
  • mhm ok hier is der quelltext des applets:


    Quellcode

    1. import java.awt.*;
    2. import java.applet.*;
    3. import java.awt.event.*;
    4. import java.io.*;
    5. public class DasApplet extends Applet implements ActionListener
    6. {
    7. Button button1;
    8. Cschreiber schreiber;
    9. Label test;
    10. public void init()
    11. {
    12. schreiber = new Cschreiber();
    13. button1=new Button("Speichern");
    14. test = new Label(" ");
    15. button1.addActionListener(this);
    16. add(button1);
    17. add(test);
    18. }
    19. public void actionPerformed(ActionEvent e)
    20. {
    21. if(e.getSource() == button1)
    22. {
    23. test.setText("hat nicht geklappt");
    24. schreiber.schreiben();
    25. test.setText("hat geklappt");
    26. }
    27. }
    28. }
    Alles anzeigen


    hab jetz auch shcon herausgefunden dass es wohl irgendwie mit dem securitymanager zusammenhängt.Aber so genau blick ich da nich durch :P
  • Denkst du dabei an einen SecurityManager in BlueJ oder an einen in deinem Browser?
    Also dass BlueJ Schreibzugriffe unterbindet halte ich für unwahrscheinlich.

    Im Galileo OpenBook findest du jedenfalls alles was den Applet Security Manager angeht:
    openbook.galileocomputing.de/javainsel8/javainsel_26_003.htm

    Dort findest du unter anderem die Einschränkung:
    Applets dürfen nicht auf lokale Dateien des Client-Rechners zugreifen, sie etwa erzeugen, lesen, modifizieren oder löschen. Sonst könnten sie wichtige Systemdateien an ihren Heimatserver übermitteln, und das stellt ein ernsthaftes Risiko dar.


    Unter weiter unten auch die Möglichkeiten du die hast.

    Weiter gehts in diesem Thread: Applet Security Manager