PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Application in Jar, Readwrite



BlueJay
27-10-2007, 06:45
Hallo Leute,

El Chefe ist bei einer Java-Application auf den Geschmack gekommen, aber ich soll es als Jar anbieten.
Ist ja für zugehörige Dateien, die nur gelesen werden, dank getResourceAsStream kein Problem, aber da ist auch eine bei, in die geschrieben werden muss.

Was mache ich mit der?

Bisherige functions:

static String loadresource(String infile)
{ String s,t="";
try
{ InputStream ips= main.class.getClassLoader().getResourceAsStream(in file);
BufferedReader in = new BufferedReader(new InputStreamReader(ips,"UTF8"));
do
{ s=in.readLine();
if (s!=null) t=t+s+"\n";
}
while (s!=null);
in.close();
}
catch (IOException e) { t=infile+" nicht gefunden oder fehlerhaft!"; }
return t;
}

// getResourceAsStream verweigert hier seinen Dienst!
static void savefile(String outfil,String inhalt)
{ try
{
BufferedWriter out = new BufferedWriter(new OutputStreamWriter(new FileOutputStream(outfil), "UTF8"));
out.write(inhalt);
out.close();
}
catch (UnsupportedEncodingException e) { System.out.println("keine UTF-8-Unsterstuetzung!"); }
catch (IOException e) { System.out.println("Datei "+outfil+" konnte nicht geschreiben werden!"); }
}


Fürs Zertifizieren ist kein Geld da.
Hat eine eine idee?

so long,
Bluejay

bischi
27-10-2007, 08:03
Hat eine eine idee?

Du machst einfach das gleiche, was alle Programme mit ihren Config-Files machen: Entweder in den gleichen Ordner legen (am einfachsten) oder an einen bestimmten Ort im FS legen (hängt vom OS ab...). Denn du kannst ja üblicherweise auch keine Daten in ein EXE nachträglich abspeichern ;)

MfG Bischi

BlueJay
27-10-2007, 09:23
Du machst einfach das gleiche, was alle Programme mit ihren Config-Files machen: Entweder in den gleichen Ordner legen (am einfachsten)

Hab's befürchtet.
Irgendwie hatte ich gehofft, dass so eine Lösung wie mit den Midlets und dem RMS kommt.
Da habe ich wohl zu lange mit Midlets rumgewurschtelt :D

so long,
BlueJay

anda_skoa
27-10-2007, 11:11
Schreiben musst du ohnehin praktisch immer in eine andere Location (systemweite Installation ermöglichen), am besten irgendwo unter "user.home"

Man kann dann betriebssystemabhängig eventuell besser Pfade finden, für Configs könnte es dazu schon fertigen Code auf sourceforge oder ähnlichen Portalen geben.

Ciao,
_