0
Java에서 수동으로 생성 된 오래된 XML 파일이 있습니다. 그 나무 구조는 이것과 같습니다.CDATA 섹션 내에 여러 개의 태그 인쇄하기
<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" href="tvshows.xsl"?>
<rss version='0.91'>
<channel>
<title>xyz.com</title>
<link>http://www.xyz.com</link>
<description></description>
<item>
<title>Downton Abbey</title>
<link>http://www.xyz.com</link>
<description><![CDATA[
<tr class='chartContent'>
<td class='rank'>1.</td>
<td class='showTitle'>Dexter</td>
<td class='network'>CBS</td>
<td class='sumInvIndex'>210</td>
<td class='earlierWeek'>-13</td>
<td class='mediaInvIndex'>225</td>
<td class='socialNetworkInvIndex'>238</td>
<td class='gammaIndex'>--</td>
</tr>]]>
</description>
</item>
</channel>
</rss>
바로 지금 정확한 형식을 생성하기 위해 JDOM 라이브러리를 사용하고 있습니다. 하지만 어떻게 CDATA를 다루어야합니까? 거의 열 10 개가있는 < tr>을 찾습니다. 나는
CDATA cdata = new CDATA("<tr class='chartContent'>");
cdata.append("<td class='rank'>" + current.getRank() + "</td>");
cdata.append("\n");
cdata.append("<td class='showTitle'>" + current.getShowTitle() + "</td>");
cdata.append("<td class='network'>" + current.getNetwork() + "</td>");
cdata.append("<td class='sumInvIndex'>" + current.getsumInvIndex() +"</td>");
cdata.append("<td class='earlierWeek'>" + current.getearlierWeek() + "</td>");
cdata.append("<td class='mediaInvIndex'>" + current.getmediaInvIndex() + "</td>");
cdata.append("<td class='socialNetworkInvIndex'>" + current.getsocialNetworkInvIndex() + "</td>");
cdata.append("<td class='gammaIndex'>" + current.getgammaIndex() + "</td>");
cdata.append("</tr>");
Element description = new Element("description");
description.setContent(cdata);
와 그것을 해결하기 위해 노력하고 그러나
Element rankTD = new Element("td");
rankTD.setText(current.getRank());
& add rankTD element to cdata .
처럼 열이 뭔가에 태그를 추가하는 최적의 방법은 거기 밖으로 생성
Format format = null;
format = Format.getPrettyFormat();
content.add(new Element("td").setText(current.getRank()).setAttribute("class","showTitle"));
-------------------
-------------------
-------------------
String cdataContent = new XMLOutputter(format).outputString(content);
출력을 사용 후 넣어 :
<description><![CDATA[<tr class="chartContent" />
<td class="showTitle">1.</td>
<td class="network">PBS</td>
<td class="sumInvIndex">210</td>
<td class="earlierWeek">-13</td>
<td class="mediaInvIndex">225</td>
<td class="socialNetworkInvIndex">238</td>
<td class="gammaIndex">--</td>]]></description>
감사 :이 같은 뭔가를 별도로 내의 하위 태그는 적절한 순서가 아닙니다 (내 게시물에 업데이트 됨). format.getPrettyFormat();을 사용하고 있습니다. 새로운 XMLOutputter (형식) .outputString (내용); 그러나 명령은 동일하게 유지됩니다. 모든 조언/팁. –
String
에CDATA
섹션의 내용을 인코딩하고CDATA
에 그String
을 넣어해야합니다. 그러나