Java Android:JsonWriter无法写入文件

Java Android:JsonWriter无法写入文件,java,android,json,writer,Java,Android,Json,Writer,我试图在收到wifi信息后调用JsonWriter方法向test.json添加一些内容,但在成功写入文件后,文件仍然为空。下面是代码 OnReceive @Override public void onReceive(Context c, Intent i) { if (i.getAction().equals(WifiManager.SCAN_RESULTS_AVAILABLE_ACTION)) {

我试图在收到wifi信息后调用
JsonWriter
方法向test.json添加一些内容,但在成功写入文件后,文件仍然为空。下面是代码

OnReceive

 @Override
        public void onReceive(Context c, Intent i) {
            if (i.getAction().equals(WifiManager.SCAN_RESULTS_AVAILABLE_ACTION))
            {
                dbhelp = new DataBaseHelper(c);
                wifilist = new ArrayList<ScanResult>();
                wifilist = ((WifiManager) c.getSystemService(Context.WIFI_SERVICE)).getScanResults();
                dialog.dismiss();
                file = new File(c.getExternalCacheDir(),"testJson.json");           
                try
                {
                    out = new FileOutputStream(file);
                    writeJson(out);
                }
                catch(IOException e)
                {
                    e.printStackTrace();
                }
            }
        }
{
    "status": "OK",
    "num_results": "",
}
预期结果应该是

 @Override
        public void onReceive(Context c, Intent i) {
            if (i.getAction().equals(WifiManager.SCAN_RESULTS_AVAILABLE_ACTION))
            {
                dbhelp = new DataBaseHelper(c);
                wifilist = new ArrayList<ScanResult>();
                wifilist = ((WifiManager) c.getSystemService(Context.WIFI_SERVICE)).getScanResults();
                dialog.dismiss();
                file = new File(c.getExternalCacheDir(),"testJson.json");           
                try
                {
                    out = new FileOutputStream(file);
                    writeJson(out);
                }
                catch(IOException e)
                {
                    e.printStackTrace();
                }
            }
        }
{
    "status": "OK",
    "num_results": "",
}

忘记调用
JsonWriter.close()在编写
JSONObject
之后,按照以下步骤进行操作:

        writer.name("status").value("OK");
        writer.name("num_results").value("");
        writer.endObject();
        writer.close();  //<<< call close here
writer.name(“status”).value(“OK”);
writer.name(“num_results”).value(“”);
writer.endObject();

writer.close()// 忘记调用
JsonWriter.close()在编写
JSONObject
之后,按照以下步骤进行操作:

        writer.name("status").value("OK");
        writer.name("num_results").value("");
        writer.endObject();
        writer.close();  //<<< call close here
writer.name(“status”).value(“OK”);
writer.name(“num_results”).value(“”);
writer.endObject();

writer.close()//如果我想在服务器上执行或调用外部文件。若我想在服务器上执行或调用一个外部文件,我该怎么做呢。我怎么做?