그래서 Unity에서 게임을하고 있는데 XML 관련 문제가 발생했습니다. XML 데이터베이스에서 데이터를 읽음으로써 항목을 만들 수있는 튜토리얼 덕분에 시스템을 설치했습니다. 하지만 한 가지 문제가 있습니다. 다음과 같이 내가 읽을 수 내 XML 파일을 설정하려면 : 그러나Unity의 XML 직렬화 - 배열에 다른 배열 항목이 들어 있습니까?
<resistance>
<physical>
<phy>60.0</phy>
</physical>
<air>
<air>50.0</air>
</air>
</resistance>
을, 나는의 데이터를 확인하는 루트로 설정하는 방법을 발견하지 않았습니다
는 XML의 형식을.
가<Item>
<id>0</id>
<name>Helmet</name>
<resistance>
<physical>
<phy>60.0</phy>
</physical>
<air>
<air>50.5</air>
</air>
</resistance>
</Item>
[XmlArray ("저항") XmlArrayItem ("실제")가] 부분만을 읽고 다음과 같이 파일이다. 다음과 같이 나 또한 서면으로 모든 것을 시도했다 :
[XmlArray("resistance"), XmlArrayItem("physical"), XmlArrayItem("phy")]
public float[] phyres;
[XmlArray("air"), XmlArrayItem("air")]
public float[] airres;
그러나 데이터를 읽고 저항이 새가 된 것처럼 나는, 후 읽을 된 다음에 무엇을 올바른 저항을했습니다 있지만 XML 파일은 다음, 지저분한있어 XML 파일의 절대 루트. 미리 감사드립니다.
편집 : 즉, 내 자식에 서브 루트가 있고 거기에 몇 가지 배열을 보유하고 싶습니다.
편집 : 편집 : 당신이 jdweng 감사합니다,이 작성하는 것이 더 간단 결국 :
[XmlElement("resistance"), XmlArrayItem("physical")]
public float[] phyres;
[XmlElement("air")]
public float[] airres;
하지만 여전히 같은 문제를 얻을. 루트/네임 스페이스는로 설정되고 이후에는 모든 네임 스페이스에서 읽습니다. 후에도 영향을 미치지 않습니다.
변경 XmlArray : 여기
은 XML을 반영 클래스 구조입니다. XmlElement는 배열에서 작동하고 불필요한 태그를 한 수준 제거합니다. – jdweng@jdweng 코드의 마지막 스 니펫과 같은 결과를 얻은 것처럼 보입니다. 해당 요소와 그 이후의 모든 요소에 대한 루트 변경은 에서 검색됩니다. 저항 요소에서 데이터를 읽은 후 루트를 다시 으로 복원하는 방법은 무엇입니까? –
lightingft
XML을 사용하거나 클래스를 사용하여 항목에 저항을 추가해야합니다. – jdweng