парсинг XML-файла с помощью jdom + eclipse - PullRequest
1 голос
/ 10 февраля 2012

У меня проблема при разборе XML-файла. это часть этого файла:

<item>
  <title>Andrew of Auditory Implant</title>
  <link>http://www.flickr.com/photos/mike-burns/65651809/</link>
  <description>&lt;p&gt;&lt;a href="http://www.flickr.com/people/mike-burns/"&gt;Mike Burns&lt;/a&gt; a posté une photoÂ*:&lt;/p&gt;

&lt;p&gt;&lt;a href="http://www.flickr.com/photos/mike-burns/65651809/" title="Andrew of Auditory Implant"&gt;&lt;img src="http://farm1.staticflickr.com/31/65651809_0935d9acbf_m.jpg" width="180" height="240" alt="Andrew of Auditory Implant" /&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;November 20th, 2005 @ Middle East Upstairs.&lt;/p&gt;</description>
  <pubDate>Mon, 21 Nov 2005 14:25:17 -0800</pubDate>
  <dc:date.Taken>2005-11-20T22:24:30-08:00</dc:date.Taken>
  <author flickr:profile="http://www.flickr.com/people/mike-burns/">nobody@flickr.com (Mike Burns)</author>
  <guid isPermaLink="false">tag:flickr.com,2004:/photo/65651809</guid>
  <media:content url="http://farm1.staticflickr.com/31/65651809_0935d9acbf_b.jpg" type="image/jpeg" height="1024" width="766" />
  <media:title>Andrew of Auditory Implant</media:title>
  <media:description type="html">&lt;p&gt;November 20th, 2005 @ Middle East Upstairs.&lt;/p&gt;</media:description>
  <media:thumbnail url="http://farm1.staticflickr.com/31/65651809_0935d9acbf_s.jpg" height="75" width="75" />
  <media:credit role="photographer">Mike Burns</media:credit>
  <media:category scheme="urn:flickr:tags">upcoming40467 auditoryimplant middleeastupstairs upcomingorg upcomingevent</media:category>
  <creativeCommons:license>http://creativecommons.org/licenses/by-sa/2.0/deed.fr</creativeCommons:license>
</item>

проблема в этой строке:

<media:category scheme="urn:flickr:tags">upcoming40467 auditoryimplant middleeastupstairs upcomingorg upcomingevent</media:category>

это мой код Java:

SAXBuilder sxb = new SAXBuilder();
    try
    {
    //On crée un nouveau document JDOM avec en argument le fichier XML


    document = sxb.build(new File(fileName));

      racine = document.getRootElement().getChild("channel");

      System.out.println( "racine"+racine);
      List listPhotos = racine.getChildren("item");
      System.out.println (listPhotos.size());
    //On crée un Iterator sur notre liste
      Iterator j = listPhotos.iterator();
      while(j.hasNext())
      {


         Element courant = (Element)j.next();

         System.out.println("courant:="+courant);


    String Title =   courant.getChild("title").getValue();
         System.out.println("Title:="+Title);
    String  description=     courant.getChild("description").getValue();
         System.out.println("description:="+description);
    //String  tags=  courant.getChild("media:category").getValue();
         //System.out.println("media:category:="+tags);
         System.out.println(courant.getChild("media:category"));
.....

работает для заголовка и описания, но не для медиа: категория когда я делаю:

System.out.println(courant.getChild("media:category"));

Я нашел:

нуль Кто-нибудь может мне помочь?

1 Ответ

0 голосов
/ 10 февраля 2012

Я не проверял это (потому что я обычно не использую JDom), но вы должны заботиться о пространствах имен XML, вы не можете просто игнорировать их или рассматривать пространство имен +: + localname как имя.Тем не менее, кажется, что Элемент имеет имя пространства getChild метод .

...