簡體   English   中英

在Java中編碼特殊的HTML字符<> /“

[英]Encoding special HTML characters < > / " in Java

我使用的是Java 1.6.0

我正在尋找在Java中編碼特殊HTML字符的正確方法

我的HTML

  <div id="sliceXML">Florida</div> 

我試圖通過使用下面的Java將String xmlMatch定義為上述div標簽的內容(在本例中為Florida)。 但是我相信我沒有正確定義startTag或endTag。

我的Java

String testContent = contentPara;
String startTag = "\"sliceXML\">";                      
String endTag = "</div";                                        
String xmlMatch = null; 

int startPosition = testContent.indexOf(startTag);  

if(startPosition >1){

    int subStringIndex = startPosition + startTag.length();                                 
    int endPosition = testContent.indexOf(endTag, subStringIndex);              

    if(endPosition >= startPosition){
        xmlMatch = testContent.substring(subStringIndex, endPosition);
        out.println(xmlMatch.length()); 

    //out.println(startTag);

    out.println("Florida".equals(xmlMatch));
    out.println("florida".equals(xmlMatch));
}   
 }

任何幫助都很有用。 這也可以讓我在這里回答以前的相關問題

編輯

解決方案

正如我在下面解釋的那樣,我相信我的問題是String endTag = "</div";的正斜杠String endTag = "</div"; 為了解決這個問題,我只是將我的結束標記更改為String endTag = "<";

我仍然不知道為什么會發生這種情況,如果有人能回答的話會很棒。

我真的會使用一個HTML解析器,比如容易混淆的JTidy (它是一個HTML漂亮的打印機,但也為HTML結構提供了一個DOM接口)。

它可以幫助您避免頭痛,例如解析和處理字符實體和編碼。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM