简体   繁体   English

在Java中编码特殊的HTML字符<> /“

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

I am using Java 1.6.0 我使用的是Java 1.6.0

I am looking for the correct methods of encoding special HTML characters in Java 我正在寻找在Java中编码特殊HTML字符的正确方法

My HTML 我的HTML

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

I am trying to define a String xmlMatch as the content (in this case Florida) of the above div tag by using the below Java. 我试图通过使用下面的Java将String xmlMatch定义为上述div标签的内容(在本例中为Florida)。 However i believe i do not have my startTag or endTag defined correctly. 但是我相信我没有正确定义startTag或endTag。

My Java 我的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));
}   
 }

Any help is much appricated. 任何帮助都很有用。 This would also allow me to answer a previous related question here 这也可以让我在这里回答以前的相关问题

EDIT 编辑

WORK AROUND SOLUTION 解决方案

As i explain below, i believe my issue was with the forward slash in String endTag = "</div"; 正如我在下面解释的那样,我相信我的问题是String endTag = "</div";的正斜杠String endTag = "</div"; To get past this problem i simply changed my end tag to String endTag = "<"; 为了解决这个问题,我只是将我的结束标记更改为String endTag = "<";

I still dont know why this happened, it would be great if someone could answer. 我仍然不知道为什么会发生这种情况,如果有人能回答的话会很棒。

I would really use an HTML parser, such as the confusingly-named JTidy (it's an HTML pretty-printer, but also gives you a DOM interface to the HTML structure). 我真的会使用一个HTML解析器,比如容易混淆的JTidy (它是一个HTML漂亮的打印机,但也为HTML结构提供了一个DOM接口)。

It'll save you from headaches such as the parsing and handling character entities and encoding. 它可以帮助您避免头痛,例如解析和处理字符实体和编码。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM