Langsam mach' ich Fortschritte, aber nun bin ich wieder mal an einem Punkt wo ich nicht seh' wie's weiter gehen soll. Falls jemand von euch mal einen Blick auch meinen code werfen könnte...
Hintergrund: Der code soll nach einer vorgegebenen Zeichenkette in einem Textfile suchen. Auf der simulierten sdcard liegt ein file names test.txt, mit folgendem Inhalt:
der code sollte also die vorgegebene Zeichenkette 'hir' in der dritte Zeile finden und dann eine positive Rückmeldung geben:
Java
package dev.molph.filesearch;
import java.io.BufferedReader;
import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.IOException;
import android.app.Activity;
import android.os.Bundle;
import android.widget.TextView;
public class filesearch extends Activity {
/** Called when the activity is first created. */
File file;
String[] list;
String path = "/sdcard/test.txt";
String w = "hir";
boolean foundit;
FileReader fr;
TextView tv_out;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
tv_out = (TextView) findViewById(R.id.tv);
try {
fr = new FileReader(path);
} catch (FileNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
foundit = foundInFile (w, fr);
if (foundit) {
tv_out.setText("found");
} else {
tv_out.setText("not found");
}
}
public boolean foundInFile (String word, FileReader f) {
boolean found = false, comp = false;
boolean ignoreCase = true;
String line;
BufferedReader in = new BufferedReader(f);
int counter;
try {
while (!found) {
line= in.readLine();
for ( counter=0; counter<line.length()-word.length() ; counter++) {
comp = line.regionMatches(ignoreCase, counter, word, 0, line.length());
if (comp) {
found = true;
}
}
}
}
catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return found;
}
}
Alles anzeigen
Leider kriegt ich nur die folgende Fehlermeldung:
Code
Sorry!
The applikation File Search
(process dev.molph.filesearch)
has stopped unexpectedly.
Please try again.
Als ich das letzte Mal eine solche Meldung hatte, war wegen einer nicht initialisierten Variable. Aber diesmal kann ich beim besten Willen nichts dergleichen Entdecken.
Kann mir jemand mal auf die Sprünge helfen?