Чтение системного файла Android
Я пробовал много решений для чтения файлов, но никто не работал. Мне нужен метод, чтобы прочитать системный файл и показать текст в тосте или в диалоговом окне. Конечно, у моего приложения есть разрешение root. Я должен показать содержание "eoc_status" в тосте после щелчка по флажку.
Например;
Runtime.getRuntime().exec("/sys/kernel/abb-chargalg/eoc_status").getInputStream();
Мне нужно открыть текстовые файлы.
1 ответ
Решение
Предполагая, что у вас есть доступ для чтения к eoc_status
Вы хотите прочитать это, а не exec
Это. т.е. использовать cat
или использовать FileReader
:
Тогда вам захочется что-то сделать (положить в тост) с возвращенным InputStream
,
Например:
BufferedReader buffered_reader=null;
try
{
//InputStream istream = Runtime.getRuntime().exec("cat /sys/kernel/abb-chargalg/eoc_status").getInputStream();
//InputStreamReader istream_reader = new InputStreamReader(istream);
//buffered_reader = new BufferedReader(istream_reader);
buffered_reader = new BufferedReader(new FileReader("/sys/kernel/abb-chargalg/eoc_status"));
String line;
while ((line = buffered_reader.readLine()) != null)
{
System.out.println(line);
}
}
catch (IOException e)
{
// TODO
e.printStackTrace();
}
finally
{
try
{
if (buffered_reader != null)
buffered_reader.close();
}
catch (IOException ex)
{
// TODO
ex.printStackTrace();
}
}