[英]Write and Read a json data to internal storage android
I have a json array received from php 我有从php收到的json数组
[
{
"name":"Daniel Bryan",
"img":"pictures\/smallest\/dierdrepic.jpg",
"username":"@dbryan",
"user_id":"4"
},
{
"name":"Devil Hacker",
"img":"pictures\/smallest\/belitapic.jpg",
"username":"@dvHack",
"user_id":"1"
}
]
file_name.anyextension
in my apps data folder or anywhere safe. file_name.anyextension
或任何安全的地方。 file_name.anyextension
and convert it to a valid json array
that can be further edited. file_name.anyextension
读取此数据并将其转换为可以进一步编辑的有效json array
。 Can anyone show me a way how can i possibly to this thing ? 任何人都可以告诉我一个方法我怎么可能这个东西?
private void writeToFile(String data) {
try {
OutputStreamWriter outputStreamWriter = new OutputStreamWriter(openFileOutput("config.txt", Context.MODE_PRIVATE));
outputStreamWriter.write(data);
outputStreamWriter.close();
}
catch (IOException e) {
Log.e("Exception", "File write failed: " + e.toString());
}
}
private String readFromFile() {
String ret = "";
try {
InputStream inputStream = context.openFileInput("config.txt");
if ( inputStream != null ) {
InputStreamReader inputStreamReader = new InputStreamReader(inputStream);
BufferedReader bufferedReader = new BufferedReader(inputStreamReader);
String receiveString = "";
StringBuilder stringBuilder = new StringBuilder();
while ( (receiveString = bufferedReader.readLine()) != null ) {
stringBuilder.append(receiveString);
}
inputStream.close();
ret = stringBuilder.toString();
}
}
catch (FileNotFoundException e) {
Log.e("login activity", "File not found: " + e.toString());
} catch (IOException e) {
Log.e("login activity", "Can not read file: " + e.toString());
}
return ret;
}
When read string from file convert it to JsonObject or JsonArray 从文件读取字符串时将其转换为JsonObject或JsonArray
JSONArray jarray = new JSONArray(str);
Corrected answer of Morteza Soleimani for reading: 更正了Morteza Soleimani的答案:
public static String readFromFile(String path) {
String ret = "";
try {
InputStream inputStream = new FileInputStream(new File(path));
if ( inputStream != null ) {
InputStreamReader inputStreamReader = new InputStreamReader(inputStream);
BufferedReader bufferedReader = new BufferedReader(inputStreamReader);
String receiveString = "";
StringBuilder stringBuilder = new StringBuilder();
while ( (receiveString = bufferedReader.readLine()) != null ) {
stringBuilder.append(receiveString);
}
inputStream.close();
ret = stringBuilder.toString();
}
}
catch (FileNotFoundException e) {
Log.e("FileToJson", "File not found: " + e.toString());
} catch (IOException e) {
Log.e("FileToJson", "Can not read file: " + e.toString());
}
return ret;
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.