public static void saveSettingFile(String fileName, SettingDataStruct settingDataStruct) {
Gson gson = new Gson();
String jsonString = gson.toJson(settingDataStruct);
JsonFileWriteAndRead.saveSettingFile(fileName, jsonString);
}
public static void saveSettingFile(String fileName, String content) {
FileOutputStream fos = null;
String state = Environment.getExternalStorageState();
if (state.equals(Environment.MEDIA_MOUNTED)) {
File file = new File(Environment.getExternalStorageDirectory()
+ "/" + fileName + ".json");
try {
fos = new FileOutputStream(file);
byte[] buffer = content.getBytes();
fos.write(buffer);
fos.close();
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}
}
public static SettingDataStruct getJsonString(String fileName)
throws IOException {
SettingDataStruct settingDataStruct = new SettingDataStruct();
if ((fileName == null) || fileName.isEmpty()) {
settingDataStruct = null;
return settingDataStruct;
}
FileInputStream fis = null;
String state = Environment.getExternalStorageState();
if (state.equals(Environment.MEDIA_MOUNTED)) {
File file = new File(Environment.getExternalStorageDirectory()
+ "/" + fileName + ".json");
if (file.exists()) {
fis = new FileInputStream(file);
byte[] buffer = new byte[fis.available()];
fis.read(buffer);
fis.close();
Gson gson = new Gson();
settingDataStruct = gson.fromJson(new String(buffer),
SettingDataStruct.class);
} else {
settingDataStruct = null;
}
}
return settingDataStruct;
}
今天在查资料的时候还发现了GsonFormat,可以帮你根据json数据生成数据结构,挺有意思的,记下来!
1、安装:
File -->> settings -->> plugins ,搜索后点安装即可。
2.使用:新建一个结构类,在里面点右键,选择GsonFormat
3、完!