Created
March 7, 2018 09:30
-
-
Save bluemyria/8aaaa225caafed113a1bafaad2f89e40 to your computer and use it in GitHub Desktop.
Android - 009 - File access ( READ / WRITE )
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
////////////////////////////////////////////////////////////////////////////////////////////// | |
// AndroidManifest.xml | |
////////////////////////////////////////////////////////////////////////////////////////////// | |
<manifest xmlns:android="http://schemas.android.com/apk/res/android" | |
package="...."> | |
// WRITE_EXTERNAL_STORAGE permission is enough for both reading and writing | |
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"/> | |
// WRITE_EXTERNAL_STORAGE permission is enough for both reading and writing | |
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/> | |
<application | |
...... | |
</application> | |
</manifest> | |
////////////////////////////////////////////////////////////////////////////////////////////// | |
// MainActivity | |
////////////////////////////////////////////////////////////////////////////////////////////// | |
public class MainActivity extends AppCompatActivity { | |
private void auslesen() { | |
try { | |
String dateiname = Environment.getExternalStorageDirectory() + "/Dateien/android.txt"; | |
FileReader fr = new FileReader(dateiname); | |
BufferedReader br = new BufferedReader(fr); | |
String zeile; | |
zeile = br.readLine(); | |
// | |
while (zeile != null) { | |
// do sth with the zeile, eg lbl.append(zeile + "\n"); | |
zeile = br.readLine(); | |
} | |
br.close(); | |
fr.close(); | |
} catch (Exception ex) { | |
lbl.append("\n\n" + ex.getMessage()); | |
} | |
} | |
// Beim Beebden der App soll die aktuelle Uhrzeit in die Datei geschrieben werden | |
// Beim nächsten Start der App wird die Info wiedergelesen und angezeigt | |
@Override | |
protected void onDestroy() { | |
try { | |
String dateiname = Environment.getExternalStorageDirectory() + "/Dateien/android.txt"; | |
SimpleDateFormat sdf = new SimpleDateFormat("HH:mm:ss"); | |
File file = new File(dateiname); | |
FileWriter fw = new FileWriter(file); | |
fw.append(sdf.format(new Date())+"\n"); | |
fw.close(); | |
} catch (Exception ex) { | |
lbl.append("\n\n" + ex.getMessage()); | |
} | |
super.onDestroy(); | |
} | |
@Override | |
protected void onCreate(Bundle savedInstanceState) { | |
............... | |
// Abfragen ob Permission geteilt wurde NUR wenn sie tatsächlich | |
// noch nicht erteilt wurde | |
if(ActivityCompat.checkSelfPermission(this | |
, Manifest.permission.WRITE_EXTERNAL_STORAGE) !=PackageManager.PERMISSION_GRANTED) { | |
// abzufragende Berechtigungen in ein Array stecken | |
String[] permissions = {Manifest.permission.READ_EXTERNAL_STORAGE, Manifest.permission.WRITE_EXTERNAL_STORAGE}; | |
// ... und Abfrage starten | |
requestPermissions(permissions, 1); | |
} | |
if(ActivityCompat.checkSelfPermission(this | |
, Manifest.permission.READ_EXTERNAL_STORAGE) ==PackageManager.PERMISSION_GRANTED) | |
auslesen(); | |
} | |
} | |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment