Hey Guys在这段代码中我写了一个JSON文件,之后我想读它。但是每当我想要阅读时,我都会得到这样的东西:" [B @ ea6df"。每次另一个答案。我做错了什么?
public void writeFile(Context context, String mJsonResponse) {
String file_name = "login_datas.json";
try {
FileWriter file = new FileWriter(context.getFilesDir().getPath() + "/" + file_name);
file.write(mJsonResponse);
file.flush();
file.close();
} catch (IOException e) {
Log.e("TAG", "Error in Writing: " + e.getLocalizedMessage());
}
}
public void readFile(Context context) {
try {
String file_name = "login_datas.json";
File f = new File(context.getFilesDir().getPath() + "/" + file_name);
//check whether file exists
FileInputStream is = new FileInputStream(f);
int size = is.available();
byte[] buffer = new byte[size];
is.read(buffer);
is.close();
Toast.makeText(LoginActivity.this,buffer.toString(),Toast.LENGTH_LONG).show();
} catch (IOException e) {
Log.e("TAG", "Error in Reading: " + e.getLocalizedMessage());
}
}
答案 0 :(得分:1)
buffer.toString()
没有按你的想法行事。它不会写入字节数组的内容,而是使用通用Object.toString()
方法,该方法仅以十六进制表示形式显示对象的类名及其哈希码。