Sam Browder
- Forum-Beiträge: 236
03.11.2012, 19:06:36 via Website
03.11.2012 19:06:36 via Website
Ich habe folgendes Problem:
ich will eine einzige Textdatei, welche sich auf der SD Karte befindet, im TextView anzeigen lassen, wenn man auf einen Button klickt.
Ich glaube ich habe schon alles gemacht - die Überprüfung, ob die Datei auch wirklich existiert (Zeile 16) funktioniert auch, aber es wird einfach nichts im TextView angezeigt. Ich weiss einfach nicht, wo der Fehler liegt... Hier ist der Quellcode dazu:
ich will eine einzige Textdatei, welche sich auf der SD Karte befindet, im TextView anzeigen lassen, wenn man auf einen Button klickt.
Ich glaube ich habe schon alles gemacht - die Überprüfung, ob die Datei auch wirklich existiert (Zeile 16) funktioniert auch, aber es wird einfach nichts im TextView angezeigt. Ich weiss einfach nicht, wo der Fehler liegt... Hier ist der Quellcode dazu:
1public class MainActivity extends Activity {
2 private TextView mTextInput;
3 private File f;
4 private Button mButton;
5
6 @Override
7 public void onCreate(Bundle savedInstanceState) {
8 super.onCreate(savedInstanceState);
9 setContentView(R.layout.main);
10
11 mTextInput = (TextView) findViewById(R.id.textRead);
12
13 f = new File(Environment.getExternalStorageDirectory()+"/test.txt");
14
15 mButton = (Button) findViewById(R.id.data_load);
16 mButton.setEnabled(f.exists());
17 }
18 public void onButtonClick (View view) {
19 switch (view.getId()) {
20 case R.id.data_load:
21 try {
22 FileInputStream fileIn =
23 new FileInputStream(f);
24 loadData(fileIn);
25
26 } catch (FileNotFoundException e) {
27 e.printStackTrace();
28 }
29 break;
30 }
31 }
32 private void loadData(FileInputStream fileIn) {
33 BufferedReader fileInBuffer = new BufferedReader (new InputStreamReader(fileIn));
34 String text = "";
35 String line;
36 try {
37 while ((line = fileInBuffer.readLine()) != null) {
38 text += line;
39 }
40 } catch (IOException e) {
41 e.printStackTrace();
42 } finally {
43 try {
44 fileInBuffer.close();
45 } catch (IOException e) {
46 e.printStackTrace();
47 }
48 }
49 mTextInput.setText(text);
50 }
51}
Danke im Voraus! 2 private TextView mTextInput;
3 private File f;
4 private Button mButton;
5
6 @Override
7 public void onCreate(Bundle savedInstanceState) {
8 super.onCreate(savedInstanceState);
9 setContentView(R.layout.main);
10
11 mTextInput = (TextView) findViewById(R.id.textRead);
12
13 f = new File(Environment.getExternalStorageDirectory()+"/test.txt");
14
15 mButton = (Button) findViewById(R.id.data_load);
16 mButton.setEnabled(f.exists());
17 }
18 public void onButtonClick (View view) {
19 switch (view.getId()) {
20 case R.id.data_load:
21 try {
22 FileInputStream fileIn =
23 new FileInputStream(f);
24 loadData(fileIn);
25
26 } catch (FileNotFoundException e) {
27 e.printStackTrace();
28 }
29 break;
30 }
31 }
32 private void loadData(FileInputStream fileIn) {
33 BufferedReader fileInBuffer = new BufferedReader (new InputStreamReader(fileIn));
34 String text = "";
35 String line;
36 try {
37 while ((line = fileInBuffer.readLine()) != null) {
38 text += line;
39 }
40 } catch (IOException e) {
41 e.printStackTrace();
42 } finally {
43 try {
44 fileInBuffer.close();
45 } catch (IOException e) {
46 e.printStackTrace();
47 }
48 }
49 mTextInput.setText(text);
50 }
51}
Empfohlener redaktioneller Inhalt
Mit Deiner Zustimmung wird hier ein externer Inhalt geladen.
Mit Klick auf den oben stehenden Button erklärst Du Dich damit einverstanden, dass Dir externe Inhalte angezeigt werden dürfen. Dabei können personenbezogene Daten an Drittanbieter übermittelt werden. Mehr Infos dazu findest Du in unserer Datenschutzerklärung.