2011-09-14 15 views
4

私は、既存のxhtmlファイルを解析して、追加の本文コンテンツをそのファイルに追加しようとしています。ファイルの早期終了の例外の取得

まず私はJsoupから身体を読んでいると私はXhtmlFile

Document doc = Jsoup.parse(readFile, "UTF-8"); 
      Elements content = doc.getElementsByTag("body"); 

      try { 
       Document document=null; 
       DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance(); 
       // Create the builder and parse the file 
       document = (Document)factory.newDocumentBuilder().parse(finalFile); 
       //document.getElementsByTagName("body")append(content.toString());    
       //document=parserXML(finalFile);     
       document.getElementsByTag("body").append(content.toString()); 

      } catch (SAXException e) { 
       System.out.println("SAXException>>>>>>"); 
       e.printStackTrace(); 
      } catch (ParserConfigurationException e) { 
       System.out.println("in parser configuration Exception block>>>>>>"); 
       e.printStackTrace(); 
      } 

に入れしようとしていますが、私は次の例外取得しています:

[Fatal Error] ResultParsedFile.html:1:1: Premature end of file. 
org.xml.sax.SAXParseException: Premature end of file. 
    at com.sun.org.apache.xerces.internal.parsers.DOMParser.parse(Unknown Source) 
    at com.sun.org.apache.xerces.internal.jaxp.DocumentBuilderImpl.parse(Unknown Source) 
    at javax.xml.parsers.DocumentBuilder.parse(Unknown Source) 
    at com.converter.typeconverter.EmailTypeConverter.readHTML(EmailTypeConverter.java:101) 
    at com.converter.typeconverter.EmailTypeConverter.callTika(EmailTypeConverter.java:64) 
    at com.converter.master.ApplicationMain.main(ApplicationMain.java:64) 
を私は次のコードを使用しています

pleseはは...この問題を解決するには、事前に

おかげで...私を助け

+1

finalFileのようなサウンドはおそらく有効なXMLファイルではありません... –

+0

XHTMLの場合は、プレーンなXMLパーサーで解析できるはずです。 Jsoupは、特にX!HTMLを狙ったものではありません。 – bmargulies

+0

@Jonは、解析するためにDOMやSAXパーサを使用しないことを意味しますが、jsoupから、必要なhtmlファイルの本文を取得しています。xhtml(finalfile).thanksの本文にそのメッセージを挿入するだけです。あなたの時間。この点に関するポインタ。 – ramesh

答えて

1

このメッセージは、不正な形式のXMLファイルがあることを示しています。通常、このメッセージが表示されたら、開始タグと一致する終了タグがありませんでした。私はあなたも空のファイルにこれを取得すると思います。

+0

私はxhtmlファイルを使用していますが、私は身体部分を追加したいと思います。適切な開始タグと終了タグを持つスケルトンxhtmlページが利用可能です。 – ramesh

2

ファイルの最初の位置(1:1が示す)でこのエラーが発生した場合、ファイルが空であることを意味します。

ソースが終了する前にファイルを読み始めることはありますか?

入力ストリーム(ここでは該当しません)を使用する場合は、すでにファイルの最後まで到達していたストリームを再利用すると発生します。入力ファイルから新しいストリームを作成して、ファイルの先頭からリセットする必要があります。

0

私は最近、このエラーを経験していた、私の.hbm.xmlのいずれかのファイルが空のように生成されていたが判明し、エラーが言及していたアプリケーションコンテキストXMLから生成されていたHBMファイルへ

0

1.xmlされます読めない。 2. xmlを修正するには、スプレッドシートにドラッグアンドドロップするだけです。エラーはより明確に強調表示されます。提案された修正xmlが最終的にスプレッドシートに読み込まれた後、正常に読み込まれたxmlは解析問題

関連する問題