2012-07-10 3 views
0

나는 새내기가 도움이 필요합니다.JDOM을 사용하여 XML로 텍스트 구문 분석하기

내가 (일부 추가 속성을 가진) XML에있는 텍스트를 변환하고

내 텍스트 스플라인 (설명 N, -1.151,1.002, -0.161,0.997, 0.840, -0.004)이다

은 정말 따라서 3 × 3 개의 Y 좌표 값을 가지며,

<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이 고정되면 I은 상기 실시 예 N = 3, 간단히 변환 할 수있는 다음과 같은 JDOM을 사용하여 XML에있을 필요가있다. 하지만 내가 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

당신은

이 외부해야한다 ... (변수 이름은 소문자이어야 함) 루프 내부 스플라인 요소를 생성해서는 안
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]);