У меня есть небольшая проблема с записью файла во внутреннем хранилище из моего приложения. Я получаю исключение нулевого указателя, но не могу найти способ его исправить .. и на самом деле может Не понимаю, какой из элементов имеет значение null.Android, сохраняющий данные во внутреннем хранилище NullPointerException
Вот код, который я использую:
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 - файл (есть или нет).
Второй сценарий:
Я имею ту же функцию сохранения файла во внутренней памяти, но я звоню этот метод из другого activity.Here ситуация:
У меня есть разные пакеты, полученные через Интернет, и я делаю что-то вроде этого:
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()
Я пытаюсь сохранить файл.
Так что любая помощь приветствуется! Спасибо заранее!
как инициализировать контекст? полезный код или фрагмент –
Контекстный контекст; Я не могу использовать context = this; потому что это дает мне ошибку. Я пробовал использовать context.getApplicationContext(); тоже не помогло. –