Ничто не устанавливает readjsonString
между:
String readjsonString = null;
и:
if(readjsonString.isEmpty()){
Таким образом, ожидается первое исключение, которое вы ловите, и то, что вы делаете, это не хорошая практика вообще.Если ожидается, что readjsonString
будет нулевым (как здесь), проверьте это.
if (readjsonString == null) {
readjsonString = strLine;
} else {
...
}
Было бы еще лучше, если бы вы использовали StringBuilder - вот для чего он.
Второй NPE произойдет точно там , только если gson
равен нулю.Эта переменная не определена или не установлена в том, что вы опубликовали, поэтому не может знать, возможно ли это.
Если происходит исключение внутри вызова метода fromJson
, оноЭто может быть связано с тем, что вы вообще не читаете ввод, и, таким образом, readjsonString
все равно будет нулевым.Поэтому переключитесь на StringBuilder и прекратите использовать исключения для нормального управления потоком, и все будет в порядке.
Если это не решит ваши проблемы, вам нужно опубликовать трассировку стека.