0
<?xml version='1.0' encoding='UTF-8'?>
 <!DOCTYPE dmodule 
 [<!NOTATION JPEG SYSTEM 'Joint Photographic Experts Group'>
  <!ENTITY abcd SYSTEM  'sunset.jpg' NDATA JPEG>
 ]>

  ....
  <graphic id = "abcd"/>

上記のサンプル コードを参照して、エンティティ宣言で定義されているファイル パス Sunset.jpg を取得する必要がある html で夕日の画像を取得する必要があります。

Javaでどうすればいいですか?私は試した

 document.getDoctype().getEntities().item(i).getNodeName(),  

しかし、それは私にabcdを与えますが、ファイルパス「sunset.jpg」が必要です。

そして、私も試しました、

builder.setEntityResolver(new EntityResolver() {

            @Override
            public InputSource resolveEntity(String publicId, String systemId)
                    throws SAXException, IOException {
                // TODO Auto-generated method stub

                System.out.println("Public and System IDs"+publicId+"  "+systemId);
                return new InputSource(new StringReader(referDM));
            }
        });

しかし、画像ファイルがバイト配列として読み取られることを期待しているため、戻り値の型に問題があると思いますか? 戻り値の型は何ですか?

4

1 に答える 1

1

どうぞ:

Entity entity = (Entity) document.getDoctype().getEntities().item(i);
String path = entity.getSystemId();
于 2012-08-29T14:48:24.983 に答える