Я пишу приложение для Android, и мне нужно прочитать 7 файлов SYSTEM при запуске. Какой был бы самый эффективный способ сделать это?Android самый быстрый способ читать несколько файлов?
Это мой код прямо сейчас, и это довольно медленно
чтения (file1); чтение (файл2); ... читать (файл7);
...
public static String read(String file) {
String fileContents = "";
try {
String[] args = {"/system/bin/cat", file };
ProcessBuilder cmd = new ProcessBuilder(args);
Process p = cmd.start();
InputStream stream = p.getInputStream();
BufferedReader reader = new BufferedReader(new InputStreamReader(stream));
fileContents = reader.readLine();
reader.close();
stream.close();
}
catch (IOException e) {
e.printStackTrace();
}
return fileContents;
}
Там должен быть какой-то способ кошке каждый файл, не закрывая поток, который должен значительно ускорить процесс. Я попробовал создать сценарий оболочки с 7-мя котами cmds и прочесть вывод, но все все вышито вместе, и я не могу разделить результаты.
Я попытался расколоть кота CMDS с эхо-CMDS сформировать deliminator на выходе: "!"
cat file1
echo !
cat file2
echo !
Но deliminators не отображаются на выходе, и я не могу понять, почему.
Любые предложения?
Почему вы не используете встроенные классы чтения файлов Java? – Thomas
Ваши файлы в одной строке? Точно так же, как @Thomas говорит, вам не нужно использовать Process. Возможно, это может замедлить его. –
Просто протестирован с FileInputStream и теперь намного быстрее, вы, ребята, были правы. – user1974977