我正在使用 Play 框架。我有一个 JSONObject,其结构如下所示(如在控制台中打印的那样)
{
"rows_map":{
"220":["mahesh",
"outfit:bmtech,app:salesreport,uuname,ffname,llname",
"Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.9.0.5",
null
],
"221":["mahesh",
"outfit:bmtech,app:salesreport,uuname,ffname,llname",
"Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.9.0.5",
null
],
"222":["mahesh",
"outfit:bmtech,app:salesreport,uuname,ffname,llname",
"Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.9.0.5",
null
],
"223":["mahesh",
"outfit:bmtech,app:salesreport,uuname,ffname,llname",
"Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.9.0.5",
null
]
},
"columns_map":["Sender",
"Message Received",
"Device",
"Time"
]
}
我想将这个 JSONObject 写入一个文件。这是代码
String path = "/var/www/html/Prj/public/CacheLayer/Incoming_Cache/CacheFileMgr.cache";
ObjectOutputStream outputStream = null;
try{
outputStream = new ObjectOutputStream(new FileOutputStream(path));
System.out.println("Start Writings");
outputStream.writeObject(object);
outputStream.flush();
outputStream.close();
}catch (Exception e){
System.err.println("Error: " + e);
}
以上没有成功写入文件。发生序列化错误。
最佳答案
在 JSONObject 上调用 toString,然后序列化字符串。 JSONObject 本身不可序列化。
String jsonString = jsonObject.toString();
关于java - 将 JSONObject 写入文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7417401/