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