我有以下情况。它需要用Java实现。
对于point1,我做了这样的事情。
InputStream is = new ClassPathresource("file.txt").getInputStream();
byte[] ip = IOUtils.toByteArray(is);
对于point2,我的Json文件(包含json对象)应该如下所示。
{
"name": "xyz",
"address: "address here",
"ipdata": ""
}
ipdata应该包含在步骤1中创建的字节数组。
如何使用步骤1中创建的字节数组作为json对象的一部分?然后将整个内容写入一个单独的.json文件?
另外,字节数组转换是在step1中完成的最佳方式吗,或者我们需要使用其他接口(可能是为了处理编码)?请建议。
任何帮助都是非常感谢的。提前谢谢。
发布于 2018-09-20 03:47:56
由于您正在从文件中读取JSON字符串,并希望将其写回新的json文件,因此您不需要在两者之间进行JSON对象转换。只需将byte[]转换为字符串,如下所示
String ips = new String(ip);
现在,使用要写入新文件的数据创建一个JSON
对象。然后,您可以使用FileWriter
将数据写入文件。PFB代码-
JSONObject obj = new JSONObject();
obj.put("name", "xyz");
obj.put("address", "address here");
obj.put("ipdata", ips);
try(FileWriter fileWriter =
new FileWriter("newFileName.json") ){
fileWriter.write(obj.toString());
}
发布于 2018-09-20 03:38:03
如果您知道ipString = new String(ip, "UTF8")
的编码方式,您可以使用
ip.toString()
然后将该字符串添加到您的json对象中。
https://stackoverflow.com/questions/52412910
复制相似问题