我正在开发一个Android应用程序
布局是根据我在内部存储器中保存的Json文件设置的
应该从在线Url更改Json文件,因此不需要一直更新应用程序
我在AsyncTask里面写了一个从Web上获取Json文件的代码(http://myjson.com),字符串就可以了。
现在我正在尝试将我的内部存储文件更新为我从网上获得的文件,但它没有更改。
每件事都编译,应用程序正在运行。但是json文件没有更新。
这是我试过的:
(JsonData是来自web的字符串,mainactivity是我应用程序主要活动的一个实例)
final File JsonFile = new File(mainActivity.getFilesDir() + "/DefaultJson.json");
FileWriter file = new FileWriter(JsonFile);
file.write(JsonData);
file.flush();
file.close();
此代码给出了相同的结果:
FileOutputStream fOut = mainActivity.openFileOutput("DefaultJson.json", Context.MODE_PRIVATE);
fOut.write(JsonData.getBytes());
fOut.close();
请注意,这是写在doInBackground()
中答案 0 :(得分:0)
原来,save方法确实有效,我只是查看了错误的文件,这就是为什么我没有看到内容发生变化的原因。
我不知道它在哪里被保存,但是一旦我设法从代码中读取它而不是手动,它结果发现文件确实发生了变化。
我手动复制到应用程序的文件与程序处理的文件不同。