目標: ルート ディレクトリにあるファイルの内容を読み取ること。最終的には.confファイルを読み取れるようにしたいのですが、今は.txtファイルでテストしています..
XDA ビデオのオープン ソース シェル ファイルを使用して、ルート ディレクトリに移動しています。参考までに、ファイルは「/data/misc/joke.txt」にあります。
これは私のメインメソッドのコードです:
String command[]={"su","-c","ls /data/misc"};
Shell shell = new Shell();
String output = shell.sendShellCommand(command);
try {
read(output);
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
したがって、基本的には、SU パーミッションを付与し、/data/misc フォルダーに移動するだけです。次に、Shell() クラスで、各ファイルをスキャンして、目的のテキスト ファイルを検索します。テキストファイルは毎回「joke.txt」であると予想されるため、これは冗長である可能性があります。とにかく、このコード ブロックである read() メソッドに問題があります。
public void read(String out) throws Exception{
File yourFile = new File("/data/misc", out);
FileReader file = new FileReader(yourFile);
BufferedReader reader = new BufferedReader(file);
String line;
String text = "";
line = reader.readLine();
while (line != null) {
text += (line);
line = reader.readLine();
}
setNewTextInTextView(text);
}
次の行でクラッシュします。
FileReader file = new FileReader(yourFile);
任意のヒント?