0

我正在尝试从程序中修改一个方法,使其成为 JAVA 6.3,但我收到以下错误“格式错误的 URL 异常”。

我正在使用这段代码。

DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
        try{
            DocumentBuilder builder = factory.newDocumentBuilder();
            DOMImplementation implementation = builder.getDOMImplementation();
            Document document=implementation.createDocument(null, "xml", null);
           //  Document document=implementation.;
            Element raiz = document.createElement("Correos");// creamos el elemento raiz
            Element elemento = document.createElement("Correo");//creamos un nuevo elemento
            Text text = document.createTextNode("pepito@email.com");//Ingresamos la info

            document.setXmlVersion("1.0");// asignamos la version de nuestro XML
            document.getDocumentElement().appendChild(raiz);  //pegamos la raiz al documento
            raiz.appendChild(elemento); //pegamos el elemento hijo a la raiz
            elemento.appendChild(text); //

            Source source = new DOMSource(document);

            String datos="";

            Result console= new StreamResult(System.out);
            Result result = new StreamResult(new java.io.File("resultado.xml"));//nombre del archivo
            Transformer transformer = TransformerFactory.newInstance().newTransformer();
            transformer.transform(source, result);
            transformer.transform(source, console);
            //transformer.t
           // DocumentBuilder db = new DocumentBuilder();
            DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance();
            DocumentBuilder db =  dbf.newDocumentBuilder();

            //db.parse(datos) ;
            String xmlX =("<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"no\"?>\n<xml>\n<Correos>\n<Correo>pepito@email.com</Correo>\n</Correos>\n</xml>");
            db.parse(xmlX);
                    //document;
        }catch(Exception e){
            System.err.println("Error:" +e);
        }

正如您在第 31 行看到的那样,我正在“连接”发送字符串的 XML。

我正在使用的 XML 我已经在几个 Web 导航器上对其进行了测试,而且我从来没有遇到像在 JAVA 中那样的错误。

基本上我需要的是创建一个“文档”变量,因为这是我需要修改的方法返回的变量类型。

在原始方法中,而不是在上层代码中,该代码(上层代码)是我用来调试更大代码的另一个项目,是一个返回“文档”的方法。

这是我需要修改的原始代码。(以下代码在try catch内)

DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance();
DocumentBuilder db = dbf.newDocumentBuilder();
InputStream input = HTMLTools.inputStream_GET(url, timeoutMS);
InputStreamReader reader = new InputStreamReader(input, ENCODING_UTF8);
InputSource inSrc = new InputSource(reader);
inSrc.setEncoding(ENCODING_UTF8);

return db.parse(inSrc);

我不太了解 db 变量的方法解析的目的。

我也想也许我不需要 db 变量,因为我已经从上面的代码中获得了一个变量类型“ Document ”。

我已经阅读了 JavaDoc,但我不知道这些代码是如何工作的,基本上是 XML 部分。

所以基本上我认为我变得一团糟,谁能澄清我做错了什么?

谢谢。:-)

4

0 回答 0