Java 创建一个包含静态数据和IP动态列表的json文件';s

Java 创建一个包含静态数据和IP动态列表的json文件';s,java,json,file,programmatically-created,Java,Json,File,Programmatically Created,我不熟悉创建文件。我需要创建JSON,将其导入防火墙。我创建了两个测试规则,以便可以导出为导入而需要创建的文件的格式。最终输出需要如下所示: [ { "id" : 1, "enabled" : true, "category" : null, "readOnly" : null, "description" : "Test Rule #1", "string" : "1.2.3.4",

我不熟悉创建文件。我需要创建JSON,将其导入防火墙。我创建了两个测试规则,以便可以导出为导入而需要创建的文件的格式。最终输出需要如下所示:

[
    {
        "id" : 1,
        "enabled" : true,
        "category" : null,
        "readOnly" : null,
        "description" : "Test Rule #1",
        "string" : "1.2.3.4",
        "name" : null,
        "flagged" : true,
        "javaClass" : "com.testServer.uvm.node.GenericRule",
        "blocked" : true
    }, {
        "id" : 2,
        "enabled" : true,
        "category" : null,
        "readOnly" : null,
        "description" : "Test Rule #2",
        "string" : "1.2.3.5",
        "name" : null,
        "flagged" : true,
        "javaClass" : "com.testServer.uvm.node.GenericRule",
        "blocked" : true
    }
]
我有一个文本文件,其中包含我要插入到文件中的所有IP。描述将是静态描述

文本文件IP每行列出一个,如下所示:

1.2.3.4  
1.2.3.5

我对编程相当陌生,我以前使用过Java和VB,但从未读过文件,将该记录插入新文件中的新字符串,然后再做下一个记录。如果另一种语言更容易,我将学习我需要的任何东西。这是我掌握了窍门后将用于其他项目的东西。

尝试一下它会有用的,它使用JSONSimple库来准备JSON数据

import java.io.FileWriter;
import java.io.IOException;
import java.nio.file.Files;
import java.nio.file.Paths;
import java.util.List;

import org.json.simple.JSONArray;
import org.json.simple.JSONObject;

public class Test {
public static void main(String[] args) throws IOException {
    // file name from where you read the urls
    List<String> url = Files.readAllLines(Paths.get("url.txt"));
    //List to hold the contents and prepare json data
    JSONArray list = new JSONArray();

    try {

        FileWriter file = new FileWriter("test.json");

        for (int i = 0; i < url.size(); i++) {
            JSONObject obj = new JSONObject();
            obj.put("id", i+ 1);
            obj.put("enabled", new Boolean(true));
            obj.put("category", null);
            obj.put("readOnly", null);
            obj.put("description", new String("Test Rule #" + (i + 1)));
            obj.put("string", url.get(i));
            obj.put("name", null);
            obj.put("flagged", new Boolean(true));
            obj.put("javaClass", new String("com.testServer.uvm.node.GenericRule"));
            obj.put("blocked", new Boolean(true));
            list.add(obj);
        }
        file.write(list.toJSONString());
        file.flush();
        file.close();

    } catch (IOException e) {
        e.printStackTrace();
    }

}
}
导入java.io.FileWriter;
导入java.io.IOException;
导入java.nio.file.Files;
导入java.nio.file.path;
导入java.util.List;
导入org.json.simple.JSONArray;
导入org.json.simple.JSONObject;
公开课考试{
公共静态void main(字符串[]args)引发IOException{
//从中读取URL的文件名
List url=Files.readAllLines(path.get(“url.txt”);
//列表以保存内容并准备json数据
JSONArray list=新的JSONArray();
试一试{
FileWriter file=newfilewriter(“test.json”);
对于(inti=0;i
您可能在这里问这个问题太早了,因为您没有向我们展示您自己解决这个问题的尝试,也没有描述您在这个尝试中可能遇到的问题。您是否研究过以前类似的问题并尝试实施它们的解决方案?如果我站在你的立场上,那是我要做的第一件事。