拥有并输入以下格式:
<table>
<tbody>
<tr bgcolor='#999999'>
<td nowrap width='1%'>
</td>
<td nowrap width='3%' align='center'>
<font style='font-size: 8pt'> System ID </font>
</td>
<td nowrap width='5%' align='center'>
为了删除 nowrap 属性,之前使用此代码:
if (deletedString == null)
{
return exportedTable;
}
int tagPos = 0;
String resultTable = exportedTable;
while (resultTable.indexOf(deletedString) != -1)
{
tagPos = resultTable.indexOf(deletedString, tagPos);
String beforTag = resultTable.substring(0, tagPos);
String afterTag = resultTable.substring(tagPos + deletedString.length());
resultTable = beforTag + afterTag;
}
return resultTable;
deletedString是nowrap,输入是exportTable。 但这会导致性能问题。有没有更好的方法呢?
答案 0 :(得分:1)
我的建议:StringUtils.remove(source, substring)将从源字符串中删除子字符串的所有实例。 This answer对这种方法进行了基准测试,发现它比一些替代方案快五倍。
或者,使用StringBuilder汇总您的子字符串 - 每次连接两个字符串时,您都会创建一个新字符串,而StringBuilder
是可变的,并且不需要创建更新的新副本。
答案 1 :(得分:0)
你可以创建一个xmlstreamreader,并有一个while循环,只要streamreader.hasNext()就可以解析xml。
格式:
//Create stream reader
//Position at beginning of document
//While the stream reader has next (can see next line)
//perform action