Impressum · Kontakt · Hilfe
Besucher online · Mitglieder



Portal > Foren > Java > Desktop-Applikationen und Grafik > Applet, Datei aus selben Verzeichnis lesen
Antwort
 
Themen-Optionen
Alt 06.03.2005, 21:33   Nach oben    #1
Erfahrener Benutzer
 
Benutzerbild von Gottzilla
 
Registriert seit: 02.02.2005
Beiträge: 515
Standard Applet, Datei aus selben Verzeichnis lesen

Hi, rein theoretisch müsste ich doch von einem JApplet aus eine Textdatei, die im selben Verzeichnis liegt lesen können!?
Code:
BufferedReader les = new BufferedReader(new FileReader("random.txt"));
Bei einem JFrame funktioniert das auch, nur bei einem JApplet nicht. Warum? Ich breche doch nicht aus der Sandbox aus!? :mad:
Gottzilla ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 06.03.2005, 22:00   Nach oben    #2
Sym
Chefkoch-Mod
 
Benutzerbild von Sym
 
Registriert seit: 30.05.2004
Beiträge: 433
Standard

Soweit ich weiß, sollte das klappen. Was gibt es denn für Fehler? Werden Exceptions ausgeworfen?
__________________
Denk mal darüber nach...

Lars

ACHTUNG: wenn ich von Klassen spreche, könnte ich auch deren Instanzen meinen.
www.linuxforen.de +++ www.macuser.de +++ www.mrunix.de +++ www.lmprojects.de
Sym ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 06.03.2005, 22:45   Nach oben    #3
Erfahrener Benutzer
 
Benutzerbild von peschmae
 
Registriert seit: 29.05.2004
Beiträge: 228
Standard

Was ist denn "dasselbe Verzeichnis" bei einem Applet? Ich meine das läuft ja auf dem Client und da hast du eh keine Rechte sowas zu machen, aber mal abgesehen davon kann das ja wohl irgendwo sein.

Ausnahme eventuell via den Classloader, da kannst du Streams erhalten. Das könnte gehen.

MfG Peschmä
__________________
Amazon.de | The Java Trap | Freie Software | Freie Software vs. Open Source | GNU Classpath | GCJ | SableVM
"We should forget about small efficiencies, say about 97% of the time: Premature optimization is the root of all evil." - Donald Knuth
peschmae ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 07.03.2005, 07:10   Nach oben    #4
Erfahrener Benutzer
 
Benutzerbild von Gottzilla
 
Registriert seit: 02.02.2005
Beiträge: 515
Standard

Nein, wird keine Exception geworfen :confused: .

Heißt dass, ich kann mein Applet daheim (so ganz ohne Server) nicht auf Funktionalität überpüfen!?

[edit] selbes Verzeichnis heißt, dass random.txt im selben Ordner wie die .class Datei und die .html Datei liegt.
Gottzilla ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 07.03.2005, 10:29   Nach oben    #5
Erfahrener Benutzer
 
Benutzerbild von Gottzilla
 
Registriert seit: 02.02.2005
Beiträge: 515
Standard

Hab jetzt einen neuen Verdacht, da keine SecurityException geworfen wird ...
kann es sein, dass mein Code garnicht geladen wird? Hab das mal zu testzwecken direkt in die main eingefügt:

Code:
public static void main(String[] args) {
        
   test t = new test();
   t.setVisible(true);
   t.getIt();

...

void getIt() {

   ...
   BufferedReader br = new BufferedReader(new FileReader("random.txt"));
   ...
Gottzilla ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 07.03.2005, 11:54   Nach oben    #6
Sym
Chefkoch-Mod
 
Benutzerbild von Sym
 
Registriert seit: 30.05.2004
Beiträge: 433
Standard

Ehm, aber die main-Funktion befindet sich in der Klasse Test, oder?
__________________
Denk mal darüber nach...

Lars

ACHTUNG: wenn ich von Klassen spreche, könnte ich auch deren Instanzen meinen.
www.linuxforen.de +++ www.macuser.de +++ www.mrunix.de +++ www.lmprojects.de
Sym ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 07.03.2005, 12:30   Nach oben    #7
Erfahrener Benutzer
 
Benutzerbild von Gottzilla
 
Registriert seit: 02.02.2005
Beiträge: 515
Standard

Zitat:
Zitat von Sym
Ehm, aber die main-Funktion befindet sich in der Klasse Test, oder?
jep, dass weiß selbst ich, dass die da rein muss . An meinem Rechner liegts auch nicht, weil ich grad auf Arbeit bin und da klappts genauso wenig. :mad:
Gottzilla ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 07.03.2005, 14:37   Nach oben    #8
Erfahrener Benutzer
 
Benutzerbild von Gottzilla
 
Registriert seit: 02.02.2005
Beiträge: 515
Standard

Mir ist gerade aufgefallen, dass nicht einmal mehr JOptionPane funktioniert! Also langsam bekomme ich Angst! Weiß denn niemand, woran das liegen könnte?
Gottzilla ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 07.03.2005, 15:04   Nach oben    #9
Sym
Chefkoch-Mod
 
Benutzerbild von Sym
 
Registriert seit: 30.05.2004
Beiträge: 433
Standard

Vielleicht hast Du mal lauffähigen Code für uns. Das macht es etwas leichter.
__________________
Denk mal darüber nach...

Lars

ACHTUNG: wenn ich von Klassen spreche, könnte ich auch deren Instanzen meinen.
www.linuxforen.de +++ www.macuser.de +++ www.mrunix.de +++ www.lmprojects.de
Sym ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 07.03.2005, 15:05   Nach oben    #10
Erfahrener Benutzer
 
Benutzerbild von Gottzilla
 
Registriert seit: 02.02.2005
Beiträge: 515
Standard

Bin grad auf der Arbeit, wenn ich daheim bin, gibts den Code ...
Gottzilla ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 07.03.2005, 17:42   Nach oben    #11
Erfahrener Benutzer
 
Benutzerbild von Gottzilla
 
Registriert seit: 02.02.2005
Beiträge: 515
Standard

reicht das?

Code:
void getWords() { 
    try { 
        BufferedReader les = new BufferedReader(new FileReader("random.txt")); 
        for (int i = 1; (words[i] = les.readLine()) != null; i++) { 
            JOptionPane.showMessageDialog(null, 
            words[i]); 
        } 
    } 
    catch (IOException e) { 
        JOptionPane.showMessageDialog(null, 
        e); 
    } 
}
[edit] Bekomme jetzt eine SecurityException ... (kA warum jetzt erst, hab den Code nur geringfügig verändert und die getWords() Methode gar nicht) aber warum? Greife doch nur auf Daten im selben Ordner zu
Gottzilla ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 07.03.2005, 20:08   Nach oben    #12
Erfahrener Benutzer
 
Benutzerbild von Gottzilla
 
Registriert seit: 02.02.2005
Beiträge: 515
Standard

Nur so als Info, weiß jetzt (mehr oder weniger) warum ich manchmal eine securityException bekomme und manchmal nicht. Wenn ich die Methode gleich in der main aufrufe, dann bekomme ich keine securityException (warum auch immer) aber es geht trotzdem nicht. Rufe ich sie erst zu einem bestimmten Zeitpunkt auf (z. B. Knopfdruck) wird eine securityException geworfen und es geht natürlich genauso wenig.

Kann es sein, dass ich den Pfad in Form einer URL angeben muss? Wenn ja wie mache ich das, da das Ding ja lokal liegt. Außerdem soll es später auf dem Server ja auch noch funktionieren ...
Gottzilla ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 07.03.2005, 21:14   Nach oben    #13
Sym
Chefkoch-Mod
 
Benutzerbild von Sym
 
Registriert seit: 30.05.2004
Beiträge: 433
Standard

hmm, die Datei liegt im selben Verzeichnis?
Was gibt Dir denn die Filereader zurück? Ist der vielleicht schon null?

Auf dem Server wird das aber mit der Datei wohl nicht klappen. Gesucht wird dann, soweit ich weiß, lokal. Soviel Ahnung habe ich leider nicht von Applets.

Du kannst einen Verzeichnispfad immer im String angeben.

Lokale Dateien erreichst Du mittels file:///. Du kannst das File natürlich auch freigeben und dann die Datei über das Netz laden.
__________________
Denk mal darüber nach...

Lars

ACHTUNG: wenn ich von Klassen spreche, könnte ich auch deren Instanzen meinen.
www.linuxforen.de +++ www.macuser.de +++ www.mrunix.de +++ www.lmprojects.de
Sym ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 07.03.2005, 21:31   Nach oben    #14
Erfahrener Benutzer
 
Benutzerbild von Gottzilla
 
Registriert seit: 02.02.2005
Beiträge: 515
Standard

Der FileReader gibt die Richtige Datei wieder, weil es wenn ich das ganze von JFrame ableite und nicht von JApplet einwandfrei funktioniert! Es muss doch eine Möglichkeit geben dem Applet klarzumachen, dass die Datei im selben Verzeichnis liegt. *verzweilfelt-um-hilfe-bettel*
Gottzilla ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 07.03.2005, 21:37   Nach oben    #15
Sym
Chefkoch-Mod
 
Benutzerbild von Sym
 
Registriert seit: 30.05.2004
Beiträge: 433
Standard

Was passiert denn, wenn Du den Pfad direkt angibst:

file:///pfad/zum/file

Oder klappt das vielleicht, wenn Du es im Netz freigibst und dann via http:// Dein Glück versuchst?
__________________
Denk mal darüber nach...

Lars

ACHTUNG: wenn ich von Klassen spreche, könnte ich auch deren Instanzen meinen.
www.linuxforen.de +++ www.macuser.de +++ www.mrunix.de +++ www.lmprojects.de
Sym ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 07.03.2005, 21:48   Nach oben    #16
Erfahrener Benutzer
 
Benutzerbild von Gottzilla
 
Registriert seit: 02.02.2005
Beiträge: 515
Standard

@ Sym, du bist GOTT

Es läuft! *glücklich-sei*. Nur wie mache ich das dann, wenn ichs auf nen Server stelle?
Gottzilla ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 07.03.2005, 21:52   Nach oben    #17
Sym
Chefkoch-Mod
 
Benutzerbild von Sym
 
Registriert seit: 30.05.2004
Beiträge: 433
Standard

So bin ich halt.

Mit solchen Server-Geschichten habe ich bisher keine Erfahrungen. Vielleicht klappt das ja auch so. Sonst würde ich die Datei auf dem Server nach aussen hin freigeben und dann via http:// direkt darauf zugreifen.
__________________
Denk mal darüber nach...

Lars

ACHTUNG: wenn ich von Klassen spreche, könnte ich auch deren Instanzen meinen.
www.linuxforen.de +++ www.macuser.de +++ www.mrunix.de +++ www.lmprojects.de
Sym ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 14.03.2005, 19:00   Nach oben    #18
Erfahrener Benutzer
 
Benutzerbild von Gottzilla
 
Registriert seit: 02.02.2005
Beiträge: 515
Standard

Ok, jetzt ist das Ding endlich online. Nur bekomme ich eine SecurityException beim Zugriff auf die Datei. Ich mache das im Moment so:

PHP-Code:
BufferedReader fua = new BufferedReader(new FileReader(getCodeBase() + "/quiz.txt")) 
Hat jemand (Sym *g*) eine Ahnung, warum das so net funzt?
Gottzilla ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 14.03.2005, 19:44   Nach oben    #19
Benutzer
 
Registriert seit: 15.02.2005
Beiträge: 33
Standard

Ich habe den Thread bis hier nur überflogen, aber warum arbeitest du nicht mit RMI?
__________________
No Sig
Entitaet ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 14.03.2005, 20:14   Nach oben    #20
Erfahrener Benutzer
 
Benutzerbild von Gottzilla
 
Registriert seit: 02.02.2005
Beiträge: 515
Standard

Zitat:
Zitat von Entitaet
Ich habe den Thread bis hier nur überflogen, aber warum arbeitest du nicht mit RMI?
Weil ich mich damit nicht auskenne .
Gottzilla ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Antwort

Lesezeichen


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 
Themen-Optionen