2013-04-27 68 views
0

我試圖解析用的SAXParser的SAXParser找不到標籤

有一個在我的xml文件

<genres> 
    <com.omertron.themoviedbapi.model.Genre> 
     <id>28</id> 
     <name>Action</name> 
    </com.omertron.themoviedbapi.model.Genre> 
    <com.omertron.themoviedbapi.model.Genre> 
     <id>53</id> 
     <name>Thriller</name> 
    </com.omertron.themoviedbapi.model.Genre> 
    <com.omertron.themoviedbapi.model.Genre> 
     <id>10769</id> 
     <name>Foreign</name> 
    </com.omertron.themoviedbapi.model.Genre> 
</genres> 

一個流派標記一個XML文件,我嘗試使用此代碼解析它:

if(localName.equals("genres")) { 
     movie.setGenres(new ArrayList<Genre>()); 
    } 
    if(localName.equals("com.omertron.themoviedbapi.model.Genre")) { 
     System.out.println("True"); 
     movie.getGenres().add(new Genre()); 
    } 
    if(localName.equals("name")) { 
     movie.getGenres().get(movie.getGenres().size()).setGenre(currentValue); 
    } 

我不需要該流派的id,所以我去了。

的SAXParser的現在可以找到「流派」標籤,但條件:

if(localName.equals("com.omertron.themoviedbapi.model.Genre")) 

是不正確的,所以我不能解析它。

爲什麼不是這樣嗎?它應該是正確的標記名。

+0

你嘗試打印的標籤名,如果它不符合你期望? – 2013-04-27 17:57:27

+0

是的,我做到了。也許這是在流派標籤沒有條目時發生的。是否有可能將最後兩個條件放入movie.setGenres(new ArrayList ())之後的第一個條件中; ? (localName.equalsIgnoreCase(「com.omertron.themoviedbapi.model.Genre」)){System.out.printline(「yes」);} else { – user1882812 2013-04-27 18:08:46

回答

0

您的名字中有一個UpCase。

試試這個:

if (localName.equalsIgnoreCase("com.omertron.themoviedbapi.model.Genre")) 
+0

nope,沒有任何改變:( – user1882812 2013-04-27 18:18:53

+0

請粘貼關於localname的代碼 – 2013-04-27 18:21:21

+0

) System.out.println(localName);} – user1882812 2013-04-27 18:25:55