1. 程式人生 > >記錄一個解決的問題

記錄一個解決的問題

        之前頭頭寫了一個模板生成的東西,今天開發需要用到它來自動生成,沒法生成了,自己寫,有點麻煩,容易出錯,想想還是除錯一下那個問題吧。

       簡單描述一下這個問題,主要是一個解析xml的問題,一直報 :lineNumber: 1; columnNumber: 1; 檔案提前結束,這個錯誤,但是看了檔案還是有內容的,看看讀取方法,如下:

 DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
        DocumentBuilder builder = factory.newDocumentBuilder();
        Document doc = builder.parse(configXml); //其中InputStream configXml

這也是沒問題的,在看這個configXml執行之前,發現:

程式中寫的

     String s = IOUtils.toString(configXml);
     System.out.println(s);

    原來通過這個方式列印了一下xml檔案中的內容。

     問題就出在這裡,這個IOUtils.toString(configXml),讀取完之後,那個InputStream的流的讀取指標就到了底部,當執行builder.parse(configXml),發現沒有讀取到的內容了,所以就出現了,檔案中有內容,確保第一行第一列沒內容的問題。哈哈哈,就是這樣,找問題,太費了。