0
XML을 구조화하기 위해 SQLite 데이터베이스를 내 보낸 다음 C# .net의 다음 코드를 사용하여 플랫 XML로 변환했습니다.구조체 XML을 일부 열을 제외한 일반 XML로 변환
XDocument Doc = XDocument.Load("myXML.xml");
XElement[] elements = Doc.DescendantNodes()
.Where(n => n.NodeType == XmlNodeType.Text).Select(n => n.Parent).ToArray();
foreach (XElement element in elements)
{
element.Parent.SetAttributeValue(element.Name, element.Value);
element.Remove();
}
구조 XML은
<apple id="1" name="Apple 1">
<orange id="5" orangeNmae="C1" function="good for health" part="7">
<banana id="9" bananaName="48" effect="23" notes="be careful" />
<banana id="10" bananaName="49" effect="24" notes="be careful" />
</orange>
</apple>
가 지금은
<apple id="1" name="Apple 1">
<orange id="5" orangeNmae="C1" function="good for health" part="7">
<banana id="9" bananaName="48" />
<notes>be careful</notes>
<effect>23</effect>
<banana id="10" bananaName="49" />
<notes>be careful</notes>
<effect>23</effect>
</orange>
</apple>
을 다음과 같이 구조화 된 XML과 같은 몇 가지 열을 유지할 필요가 다음 것처럼
<apple>
<id>1</id>
<name>Apple 1</name>
<orange>
<id>5</id>
<orangeNmae>C1</orangeNmae>
<function>good for health</function>
<part>7</part>
<banana>
<id>9</id>
<bananaName>48</bananaName>
<effect>23</effect>
<notes>be careful</notes>
</banana>
<banana>
<id>10</id>
<bananaName>49</bananaName>
<effect>24</effect>
<notes>be careful!</notes>
</banana>
</orange>
</apple>
생성 된 평면 XML을 다음과 같았다
아무도 나에게 그걸 어떻게 할 수있는 힌트를 줄 수 있습니까? 구조화 된 XML을 플랫 XML로 변환하는 동안 접근 방식을 변경해야합니까?
는 XSLT 변환은 이것에 대한 더 적합하지 않을까요? – rene
제게 어떤 도움을 주시겠습니까? – rzmuc
플랫 xml 변환에서 일부 열을 건너 뛸 수있는 방법이 있습니까? – rzmuc