我是新手需要你的帮助。
我正在将文本转换为XML(带有一些额外的属性)
我的文字是 样条线(N,-1.151,1.002,-0.161,0.997,0.840,-0.004,OUTLINED)
我需要使用JDOM,如下面的
<SPLINE n="3" x1="0.840" y1="-1.004" x2 ="-0.161" y2 ="0.997" x3 ="0.840" y3"-0.004" prim_style="OUTLINED" />
如果N是固定的,我可以简单地转换,在上面的例子中N = 3,所以因此有3 x和3 y坐标。但如果我在下面使用for循环,则结果不是例外。任何帮助都会很棒
root.addContent(child);
document.setContent(root);
int i = Integer.parseInt(temp_token[2]);
int count = i * 2 + i + 4;
for (int j = 0; j <= count - 5; j = j + 3) {
String x = null;
String y = null;
Element SPLINE = new Element("SPLINE")
.setAttribute("n", temp_token[2])
.setAttribute("x", temp_token[j + 4])
.setAttribute("y", temp_token[j + 5])
.setAttribute("prim_style",
temp_token[count]);
child.addContent(SPLINE);
从上面的代码
答案 0 :(得分:0)
你不应该在循环中创建SPLINE元素,它应该在...之外...(变量名应该是小写的)
root.addContent(child);
document.setContent(root);
int i = Integer.parseInt(temp_token[2]);
int count = i * 2 + i + 4;
Element spline = new Element("SPLINE");
child.addContent(SPLINE);
spline.setAttribute("n", temp_token[2]);
int pair = 0;
for (int j = 0; j <= count - 5; j = j + 3) {
pair++;
spline.setAttribute("x" + pair, temp_token[j + 4]);
spline.setAttribute("y" + pair, temp_token[j + 5]);
}
spline.setAttribute("prim_style",temp_token[count]);