1
123thomas
Fortgeschrittenes Mitglied
- 44
Hallo Leute,
ich versuche gerade für eine App(nur für mich) eine simple Textdatei erstellen, die folgende Anforderungen erfüllt:
Mein Problem ist folgendes, ich bekomme immer die Fehlermeldung:
Aber ich erstelle doch die Datei unter dem Button onClickButtonSichern und die Berechtigungen:
Gruß Thomas
ich versuche gerade für eine App(nur für mich) eine simple Textdatei erstellen, die folgende Anforderungen erfüllt:
- Textdatei lesen und schreiben
- Textdatei kann per USB ausgelsen werden
Mein Problem ist folgendes, ich bekomme immer die Fehlermeldung:
Code:
07-15 16:09:07.877 20671-20671/com.example.taschenrechner E/Fehler1: /storage/emulated/0/Daten/TR.txt: open failed: ENOENT (No such file or directory)
07-15 16:09:15.957 20671-20671/com.example.taschenrechner E/Fehler2: /storage/emulated/0/Daten/TR.txt: open failed: EISDIR (Is a directory)
Code:
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.READ_PHONE_STATE" />
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
Code:
private EditText editText;
private Button sichern;
private final String DATEINAME = "/Daten/TR.txt";
private final String VERZEICHNISS = Environment.getExternalStorageDirectory().getPath();
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity4_main);
editText = (EditText) findViewById(R.id.EditTextText);
sichern = (Button) findViewById(R.id.ButtonSave);
String pfad = VERZEICHNISS + DATEINAME;
File datei;
//File verzeichniss = new File(VERZEICHNISS);
datei = new File(pfad);
//Read text from file
StringBuilder text = new StringBuilder();
String ausgelsenentext;
try {
BufferedReader br = new BufferedReader(new FileReader(datei));
String line;
while ((line = br.readLine()) != null) {
text.append(line);
text.append('\n');
}
br.close();
ausgelsenentext = text.toString();
}
catch (IOException e) {
Log.e("Fehler1",e.getMessage());
}
editText.setText(text);
}
public void onClickButtonSichern(View view)
{
String pfad = VERZEICHNISS + DATEINAME;
File datei;
//File verzeichniss = new File(VERZEICHNISS);
datei = new File(pfad);
if(!datei.exists())
{
try {
datei.mkdirs();
} catch (Exception e) {
Log.e("Fehler5",e.getMessage());
}
try {
datei.createNewFile();
} catch (IOException e) {
Log.e("Fehler6",e.getMessage());
}
}
try {
FileOutputStream fileOut = new FileOutputStream(datei);
dateiSpeichern(fileOut);
showToast("gespeichert");
} catch (FileNotFoundException e) {
Log.e("Fehler2",e.getMessage());
}
this.finish();
}
private void dateiSpeichern(FileOutputStream fileOut)
{
OutputStreamWriter writer = new OutputStreamWriter(fileOut);
String text = editText.getText().toString();
try
{
writer.write(text);
}
catch (IOException e)
{
Log.e("Fehler3",e.getMessage());
}
finally {
if (writer != null) {
try {
writer.close();
} catch (IOException e) {
Log.e("Fehler4",e.getMessage());
}
}
}
}
Gruß Thomas