У меня небольшая проблема с записью файла во внутреннее хранилище из моего приложения. Я получаю исключение нулевого указателя, но не могу найти способ исправить это ... и на самом деле не могу понять, какой из element is null.
Вот код, который я использую:
hash= jsonObj.getString("hash");
Log.w("CLIENT AUTH HASH","SHOW CLIENT AUTH HASH : "+hash);
FileOutputStream out = context.openFileOutput("autohash",context.MODE_PRIVATE);
out.write(hash.getBytes());
out.close();
Класс, в котором я пытаюсь создать и написать этот файл, не Activity
, это просто некоторый вспомогательный класс, и поэтому он выдает ошибку, когда я пытаюсь установить context=this;
.
И на самом деле NullPointerException выдается в этой строке: FileOutputStream out = context.openFileOutput("autohash",context.MODE_PRIVATE);
, и я не могу его получить, что вызывает это исключение:
- Контекст
или
- autohash - файл (существует или не существует).
Второй сценарий:
У меня та же функция сохранения файла во внутреннем хранилище, но я вызываю этот метод из другого действия. Вот ситуация:
У меня есть разные пакеты, полученные через Интернет, и я делаю что-то вроде этого:
BasePacket packet; //all other packets extends this class.
byte[] buffer=byte[1024];
//packet calculations
switch(packetType){
case startPacket:
packet = new startPacket(/*params*/);
packet.startExecutePacket();
case endPacket:
//same procedure
}
и в startExecutePacket()
я пытаюсь сохранить файл.
Так что любая помощь приветствуется! Заранее спасибо!