從我的應用程序寫入內部存儲器中的文件時遇到了一些問題。我開始了一個空指針異常,但找不到修復它的方法..而且實際上可以不明白哪一個元素是空的。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();也沒有幫助。 –