Arbeite im Moment an einenem Bean welches ne Textdatei schreibt und einließt.
Nur leider muß ich immer genau den pfad angeben wor er sie speichern soll
derzeit
C:\\Textdatei.txt
Wenn man das so macht wird unter Linux wohl nix mehr werden deswegen suche ich na einer Methode mit der man die Pfad angabe des bean sich anzeigen lassen kann.
Den die Textdatei sollte im selben Ordner liegen.
Naja, also mit Beans kenn ich mich nicht wirklich aus, aber um herauszufinden wo sich eine Klasse gerade befindet hilft mir immer:
Code:
String where = getClass().getResource("Programm.class").toString();
Dann noch Programm.class vom Stringende abgeschnitten und du hast die position des Programms.
Vieleicht geht's aber auch einfacher und ich weiß es nur nicht ^^.
achso, ja. In dem Falle solltest du das mal so probieren:
Code:
public void setSchreiben(String schreiben) {
try{
FileWriter out = new FileWriter(new File(getClass().getResource("testaa.txt").toURI()));
out.write(schreiben);
out.flush();
out.close();
} catch(IOException ioe){
System.out.println("Schreibfehler");
} catch(URISyntaxException use) {
System.out.println("URI-Fehler");
}
}
Hab es nich getestet, aber hoffe es geht ^^.
Anmerkung: Du solltest Variabeln immer am Anfang klein schreiben, was der Leserlichkeit vorallem bei längeren Quelltexten dient. Außerdem sind aussagekräfitge Namen immer zu empfehlen und nicht etwas wie 'a' für ein File.
!Der code setzt vorraus, dass die Datei testaa.txt bereits existiert.
Deins hab ich auch gerade Probiert Dreezard da bekomme ich aber auch Fehler beim Kompiliern
C:\Apache\Tomcat\webapps\Projekt\WEB-INF\classes>javac sqlclassfiles/verb.j
sqlclassfiles/verb.java:63: cannot resolve symbol
symbol : method toURI ()
location: class java.net.URL
FileWriter out = new FileWriter(new File(getClass().getResource(
aa.txt").toURI()));
^
sqlclassfiles/verb.java:68: cannot resolve symbol
symbol : class URISyntaxException
location: class sqlclassfiles.Verb
catch(URISyntaxException use) {System.out.println("URI-Fehler");}
>hast du überhaupt schon mal mit jsp/servlets/java gearbeitet
Ne nicht wirklich das ist es ja, bin seit Tagen damit beschäftig mir some Input zu verschafen.
"Java ist auch nur eine Insel" hab ich gerade vor mir liegen ließt sich aber irgenwie total beschießen.
Und gleichzeitig sitzt mir Chefschn im Nacken und ist der überzeugung jetzt gibts nur noch Jsp und Servlet nun Hab ich den Brei :-(
Bleiglanz
ich hab "ServletContext ctx" mit eingefügt aber es besteht immer noch das selbe Problem
Cannot resolve symbol
symbol: method getServletContext()
public void setSchreiben(String Schreiben, ServletContext ctx) {
try{
FileWriter out = new FileWriter(ctx.getRealPath("/") + "testaa.txt");
{out.write(Schreiben);}
out.close();
}
catch(IOException e)
{
System.out.println(e +"fehlerbehandlung muss ich noch lernen, der text landet im logfile ....");
}
}