public static String characterString(CharacterData node){
StringBuilder builder = new StringBuilder(node.getData());
for(int i = 0; i < builder.length(); i++){
if(builder.charAt(i) == '\r'){
builder.replace(i,i+1,"\r");
i++;
}
else if(builder.charAt(i) == '\n'){
builder.replace(i,i+1,"\\n");
i++;
}
else if(builder.charAt(i) == '\t'){
builder.replace(i,i+1,"\\t");
i++;
}
}
if(node instanceof CDATASection) builder.insert(0,"CDATASection:");
else if(node instanceof Text) builder.insert(0,"Text:");
else if(node instanceof Comment) builder.insert(0,"Comment:");
return builder.toString();
}
if(builder.charAt(i) == '\r'){
builder.replace(i,i+1,"\r");
i++;
}
replace 这个函数怎么解释,在这个应用中,谢谢,
replace
public StringBuilder replace(int start,
int end,
String str)使用给定 String 中的字符替换此序列的子字符串中的字符。该子字符串从指定的 start 处开始,一直到索引 end - 1 处的字符,如果不存在这种字符,则一直到序列尾部。先将子字符串中的字符移除,然后将指定的 String 插入 start。(如果需要,序列将延长,以适应指定的字符串。)
参数:
start - 起始索引(包含)。
end - 结束索引(不包含)。
str - 将替换原有内容的字符串。
转换特殊字符