FileWriter

Z

Zonnex

Erfahrenes Mitglied
49
moin,

Ich arbeite mich gerad ein wenig im Umgang mit Dateien ein. Erstellen sowie löschen über "File" funktioniert wunderbar, nur bei "FileWriter" wird bei try/catch immer catch durchlaufen.

In der klasse wird vorher über s_name und File eine Datei erstellt (funktioniert) und hinterher soll aus einem anderen EditText der String s_inhalt gefüllt werden und in die Datei eingetragen werden...

Hat jemand nen Tipp, wieso das Schreiben immer fehlschlägt?

Code:
File f = new File("/sdcard/programm/", s_name+".txt");
FileWriter fw;
*...*
try
{
fw = new FileWriter(f.getAbsolutePath());
fw.write(s_inhalt);
fw.close();
} catch (IOException e1) { finish(); }

mfg :)
 
Moin.

Mal probiert, den Dateinamen direkt an den Konstruktor von FileWriter zu übergeben (anstatt über die File zu gehen)? Der legt ohnehin die Datei an, imho.

Gruß,
Shini
 
Hast du die Datei nach dem erstellen auch ordentlich geschlossen, bevor du mit einem neuen FileWriter drauf zugreifst?
Zeig mal ein bissl mehr Quellcode und sag mal was genau die Message der IOException ist (IOException.getMessage()).
 
Hat sich erledigt, funktioniert jetzt!

hab zwar grad nichts wirklich geändert, nur nochmal eingeben..
Hauptsache es geht :)

trotzdem danke für eure Hilfe!

mfg
 
Ok, sorry wenn ich das jetzt hier wieder hoch-push aber ich
bin hier am verzweifeln!

Ich bin immer noch totaler Programmier-Newbie und Android
macht mit mir was es will...

Ich versuche in meiner App Bluetooth-Geräte zu finden und diese
dann mit diversen Attributen (MAC-Adresse, RSSI-Wert, ...) aufzulisten.
Das klappt auch.
Jetzt will ich aber diese Liste in ner .txt-Datein abspeichern, damit
ich diese dann auf meinem Laptop auswerten kann.
Mein Code sieht so aus
Code:
 else if (BluetoothAdapter.ACTION_DISCOVERY_FINISHED.equals(action)) {
                setProgressBarIndeterminateVisibility(false);
                setTitle(R.string.scanning_done);
                
                // Write BT responses to Log-file on the SD-Card
                try { // catches IOException below
                    FileWriter f = new FileWriter("/sdcard/download/log_test.txt", true);
                    //FileOutputStream fOut = openFileOutput("log_test.txt", MODE_APPEND);
                    //OutputStreamWriter osw = new OutputStreamWriter(fOut);
                
                    // Write the string to the file
                    f.write(TESTSTRING);
                    /* ensure that everything is
                     * really written out and close */
                    f.flush();
                    f.close();
                } catch (IOException ioe) {
                ioe.printStackTrace();
                }
(Ich hab auch schon versucht mit FileOutputStream und OutputStreamWriter
herum zu spielen, aber leider versteh ich die Funktionen irgendwie nicht
genug als dass sie meine App nicht zum Abstürzen bringen...

So wie der Code jetzt ist stürzt zumindest die App nicht ab...aber ein
File wird trotzdem nicht erstellt!!
Fehlen mir noch irgendwelche Permissions im Manifest (ich hab die
WRITE_EXTERNAL_STORAGE drin...)?

Bin für jede Hilfe dankbar!

Gruß,
Frank

EDIT SAGT: Tja, wenn man dann die USB-Verbindung zwischen Droiden und
Laptop trennt und dieser dann auch die SD-Karte wieder initialisiert geht
es halt doch............

Ich versteh aber immer noch nicht das Konzept von OutputStreamWriter
und FileOutputStream! Falls da also noch jemand eine Idee zu hat...
 
Zuletzt bearbeitet:

Ähnliche Themen

P
  • philips0815
Antworten
9
Aufrufe
892
philips0815
P
Zurück
Oben Unten