【问题标题】:How to convert XML file to json如何将 XML 文件转换为 json
【发布时间】:2014-11-11 01:24:14
【问题描述】:

我想将我的 xml 文件转换为 json...但下面的代码显示空指针异常..我不知道出了什么问题。

public class Xmljson {  
    private URL url = null;
    private InputStream inputStream = null;  

    public void getXMLfromJson() {
        try{
            url = Xmljson.class.getClassLoader().getResource("datafile.xml");
            inputStream = url.openStream();
            String xml = IOUtils.toString(inputStream);
            JSON objJson = new XMLSerializer().read(xml);
            System.out.println("JSON data : " + objJson);
        }catch(Exception e){
            e.printStackTrace();
        }finally{
           try {
                if (inputStream != null) {
                    inputStream.close();
                }
                url = null;
            } catch (IOException ex) {}
        }
    }   

    public static void main(String[] args) {
        new Xmljson().getXMLfromJson();
    }
}

此处显示异常

         url = Xmlto.class.getClassLoader().getResource("data");
            inputStream = url.openStream();

NPE 是

java.lang.NullPointerException
at pkg.news.Xmlto.getXMLfromJson(Xmlto.java:19)
at pkg.news.Xmlto.main(Xmlto.java:35)

引用自

http://tutorial4java.blogspot.in/2013/04/xml-to-json-conversion.html

【问题讨论】:

  • 表示NPE行,但我假设找不到资源。

标签: java xml json


【解决方案1】:

检查一下……这很完美……

  public class Xml2json {

    static String line="",str="";
    public static void main(String[] args) throws JSONException, IOException {
        String link = "data.xml";
        BufferedReader br = new BufferedReader(new FileReader(link));
        while ((line = br.readLine()) != null) 
        {   
            str+=line;  
        }
        JSONObject jsondata = XML.toJSONObject(str);
        System.out.println(jsondata);
    }
}

【讨论】:

  • 什么是 XML? /////
  • @EvgeniiVorobei XML(可扩展标记语言)是另一种以 HTML 概念形式保持键值对的格式。例如 XML <root> <name>JSON</name> <integer>1</integer> <double>2.0</double> </root> 和 json 格式 { "name": "JSON", "integer": "1", "double": "2.0" }
  • @AzrielTan,我的意思是它是什么类?什么包?什么gradle依赖?
【解决方案2】:

它应该可以工作

url = XMLjson.class.getClassLoader().getResource("datafile.xml");

您是否也添加了这些语句,

import java.io.InputStream;  
import java.net.URL;  
import net.sf.json.JSON;  
import net.sf.json.xml.XMLSerializer;  
import org.apache.commons.io.IOUtils;  

也看看这里 http://tutorial4java.blogspot.in/2013/04/xml-to-json-conversion.html

【讨论】:

    猜你喜欢
    • 2014-10-26
    • 2017-12-14
    • 1970-01-01
    • 2013-11-05
    • 2012-06-17
    • 2017-06-18
    • 2023-03-09
    • 2011-09-21
    • 2013-08-23
    相关资源
    最近更新 更多