У меня есть программа, которая считывает строки из файла (с двумя строками) с использованием цикла while (условие bufferedReader.readLine()!=null
), присваивает myJSONObject
JSON, прочитанный из файла, затем у меня есть статус if (if(bufferedReader.readLine()!=null&&!bufferedReader.readline.matches(DELETE_REGEX))
и если это правда (т.е. если строка, которую мы читаем, не равна нулю, и мы не сопоставляем регулярное выражение), затем выполните некоторую функцию в JSON, которая должна добавить этот новый JSON в файл.
У меня есть это в некоторых блоках try-catch. Это выглядит немного так:
try{
openFiles;
while(buff.readLine()!=null){
try {
instatiateAndUseJSONParser;
if(bufferedReader.readLine()!=null
&&!bufferedReader.readline.matches(DELETE_REGEX))
{doSomeStuff;}
else
{continue;}
} catch (AllTheExceptions e){e.printStackTrace}
}
closeFiles;
}catch(SomeMoreExceptions e){e.printStackTrace}
Когда я запускаю, это переходит к оператору iff, а затем завершается с выходным значением: 0 (программа закрывается как обычно)
Почему это? Он не приближается к «продолжить» или блоку перехвата.
Если я удаляю вторую строку, я получаю NullPointerException из-за строки 50 String Reader, но я не использую StringReader
(я пытался импортировать ее, но eclipse подчеркивает ее желтым цветом, и это ничего не меняет). При отладке появляется вкладка для StringReader.<init>(String) line: 50
и просто написано «Источник не найден».
Я новичок в Java, поэтому не совсем понимаю, что происходит. Любая помощь будет оценена по прояснению этого.
Спасибо!
When I run this is gets to the iff statement, and then terminates with exit value:0 (program closed as normal)
... Это не правдоподобное объяснение происходящего. Однако опубликованный вами код (скорее всего) настолько отличается от реального кода, что мы не можем дать вам точное объяснение того, что происходит на самом деле и что его вызывает. - person Stephen C   schedule 27.09.2012