[英]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.