私はJavaに非常に慣れていません。実際、JsonファイルをXMLに変換しています。正常に動作していますが、ある意味でグループ名が各グループ値に対して出力されていません。私はこのようなJsonを持っています
{
"a": "b",
"r": "y",
"g1": [
{
"gg1": 1,
"gg2": 2,
"gg3": 3
},
{
"gg4": 4",
"gg5": 5",
"gg6": 6"
}
]
}
ネットから入手したこのJavaコードを使用しています
import java.io.InputStream;
import net.sf.json.JSON;
import net.sf.json.JSONSerializer;
import net.sf.json.xml.XMLSerializer;
import org.apache.commons.io.IOUtils;
import java.io.*;
import org.apache.commons.io.IOUtils;
public class ConvertJSONtoXMLSetRoot {
public static void main(String[] args) throws Exception {
InputStream is = ConvertJSONtoXMLSetRoot.class.getClassLoader().getResourceAsStream("json file");
String jsonData = IOUtils.toString(is);
XMLSerializer serializer = new XMLSerializer();
JSON json = JSONSerializer.toJSON( jsonData );
serializer.setRootName("SampleJSON");
serializer.setTypeHintsEnabled(false);
String xml = serializer.write( json );
System.out.println(xml);
}
}
実際には、この形式で s を出力します
<a>b</a>
<r>y</r>
<g1>
<e>
<gg1>1</gg1>
<gg2>2</gg2>
<gg3>3</gg3>
</e>
<e>
<gg4>4</gg4>
<gg5>5</gg5>
<gg6>6</gg6>
</e>
</g1>
しかし、私はこの形式で出力したい
<a>b</a>
<r>y</r>
<g1>
<gg1>1</gg1>
<gg2>2</gg2>
<gg3>3</gg3>
</g1>
<g1>
<gg4>4</gg4>
<gg5>5</gg5>
<gg6>6</gg6>
</g1>
コードを変更する必要があるか、Json 構造を変更する必要があるかはわかりません。誰か助けてください