Java Xml转换成Json, 对象
现在有以下的xml文件, 内容如下:
<iso_10303_28_terse xmlns="urn:oid:1.0.10303.238.1.0.1" xmlns:exp="urn:oid:1.0.10303.28.2.1.1"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" schema="integrated_cnc_schema">
<exp:header>
<exp:name>cds_ccat_mod2</exp:name>
<exp:time_stamp>2009-02-14T18:11:20-05:00</exp:time_stamp>
<exp:author>STEP-NC Maker 3.0</exp:author>
<exp:organization/>
<exp:preprocessor_version>ST-DEVELOPER v12</exp:preprocessor_version>
<exp:originating_system>Various</exp:originating_system>
</exp:header>
<Product_definition id="id10" Id="" Description="" Formation="id14" Frame_of_reference="id16"/>
<Process_product_association id="id11" Name="" Description="" Process="id12">
<Defined_product>
<Product_definition ref="id10" xsi:nil="true"/>
</Defined_product>
</Process_product_association>
<Product_definition_process id="id12" Name="machining" Description="" Chosen_method="id52687" Identification=""/>
<Machining_project_workpiece_relationship id="id13" Id="" Name="" Description="" Relating_product_definition="id10"
Related_product_definition="id4671"/>
<Product_definition_formation id="id14" Id="" Description="" Of_product="id15"/>
<Machining_project id="id15" Id="New Project" Name="" Frame_of_reference="id18"/>
<Product_definition_context id="id16" Name="CNC Machining" Frame_of_reference="id17"
Life_cycle_stage="manufacturing"/>
<Application_context id="id17" Application="Application protocol for the exchange of CNC data"/>
<Product_context id="id18" Name="CNC Machining" Frame_of_reference="id17" Discipline_type="manufacturing"/>
<Product_definition id="id19" Id="UNKNOWN" Description="" Formation="id21" Frame_of_reference="id30"/>
<Product_definition_shape id="id20" Name="NONE" Description="NONE">
<Definition>
<Product_definition ref="id19" xsi:nil="true"/>
</Definition>
</Product_definition_shape>
<Product_definition_formation_with_specified_source id="id21" Id="ANY" Description="" Of_product="id27"
Make_or_buy="not_known"/>
<Applied_approval_assignment id="id22" Assigned_approval="id4683">
<Items>
<Product_definition ref="id19" xsi:nil="true"/>
</Items>
</Applied_approval_assignment>
<Shape_definition_representation id="id23" Used_representation="id24">
<Definition>
<Product_definition_shape ref="id20" xsi:nil="true"/>
</Definition>
</Shape_definition_representation>
<Shape_representation id="id24" Name="" Items="id52643" Context_of_items="id35"/>
<Shape_representation_relationship id="id25" Name="" Description="" Rep_1="id24" Rep_2="id26"/>
</iso_10303_28_terse>
现在要求变成json, 最好能变成对象在java代码中进行使用,
//获取xml文件
InputStream in = new FileInputStream("D:\\mywork\\demo2\\src\\main\\resources\\chengxu.xml");
String xml = IOUtils.toString(in);
//把xml变成json
JSONObject jsonObject = XML.toJSONObject(xml);
//把json变成一个Map
Map<String, Object> map = jsonObject.toMap();
这个代码是把整个大的XML变成了一个Map, Map中不断的嵌套, 嵌套的形式和XML中的一致. 比用XML好用, 哈哈哈
本来这个是帮别人写的, 不过最后别人没给钱, 就算了.
依赖的包是:
commons-io-2.4.jar 和 json-20200518.jar
还没有评论,来说两句吧...