Исключение, которое вы видите - я бы настоятельно рекомендовал а) отлавливать как определенный тип, например IOException
, и b) для регистрации или показа с помощью сообщения или трассировки стека, и c) по крайней мере, для проверки в LogCat, с точки зрения DDMS, если вы программируете с Eclipse - вероятно, из-за того, что Android не находит config.txt
файл, который вы пытаетесь открыть. Обычно для простейших случаев, таких как ваш, файлы, которые являются частными для приложения, открываются с помощью openFileInput
- , подробности смотрите в документации .
Помимо исключения, ваш цикл чтения неисправен: вам нужно инициализировать пустую строку перед вводом и заполнить ее в условии while
.
String line = "";
while ((line = br.readLine()) != null) {
// do something with the line you just read, e.g.
temp1 = line;
temp2 = line;
}
Однако вам не нужен цикл, если вы просто хотите сохранить первые две строки в разных переменных.
String line = "";
if ((line = br.readLine()) != null)
temp1 = line;
if ((line = br.readLine()) != null)
temp2 = line;
Как уже отмечали другие, вызов readLine
занимает строку, поэтому, если ваш файл config.txt
содержит только одну строку, ваш код использует его при условии while
, тогда temp1
и temp2
get null
назначено, потому что больше нет текста для чтения.