2012-04-29 2 views
3

여러 시간 동안 노력했지만 Google에서 가능한 모든 예를 살펴 보았습니다.하지만이 속성을 가져 오는 방법을 알 수는 없습니다. Android에서 simplexml을 사용하는 XML 파일.SimpleXML/Android를 사용하여 XML 파일에서 여러 속성 값을 검색하는 방법

XML 파일 :

<?xml version="1.0" encoding="utf-8" standalone="yes"?> 
<Service> 
<Facture FactNo="" 
NoAppel="6" 
ProjDate="2012-04-01" 
NomProj="MR. H. BLOOM" 
AddProj="20, GARDEN ROAD" 
VilleProj="WESTMOUNT, QC." 
CPProj="" ContProj="M. BLOOM" 
TelProj="(555) 555-9571" 
SysMarque="" 
SysMod="" 
SysType="" 
SysSerie="" 
SysNo="" 
SysTemp="" 
Tension="" 
Phase="0" 
Halo="False" 
POFact="" 
NomFact="" 
AdrsFact="" 
VilleFact="" 
CPFact="" 
TelFact="" 
FaxFact="" 
Trouble="" 
TbLock="False" 
TDesc="" 
TRec="" 
Depl="False" 
TM="False" 
NoTM="" 
TPA="False" 
NoTPA="" 
CS="False" 
NoCS="" 
Estim="False" 
NoEstim="" 
Proj="False" 
NoProj="" 
Term="True" 
Incompl="False" 
Garant="False" 
NoGarant="" 
Annexe="False" 
NoAnnexe="" 
NoContrat="00007" 
MainDoeuvre="0,0000" 
Materiel="0,0000" 
SousTot="" 
TPS="0,0000" 
TPSTaux="0.05" 
TVQ="0,0000" 
TVQTaux="0.085" 
Total="0,0000" /> 
<Pieces> 
<Piece Qty="10" Desc="test" PO="12345678" PrixUnit="0.0000" Montant="0.0000" /> 
<Piece Qty="25" Desc="testitem2" PO="33333" PrixUnit="22.0000" Montant="220.0000"   /> 
<Piece Qty="35" Desc="testitem3" PO="44444" PrixUnit="33.0000" Montant="440.0000"  /> 
</Pieces> 
<Techs> 
<Tech Nom="Bobby" Reg="1" TD="2" Taux="3.5000" Montant="0.0000" Lock="False" Date="2012-04-01 
10:49:00" /> 
</Techs> 
<Sign /> 
<Pics /> 
</Service> 

XML 파일은 그래서 그것을 수정할 수 없습니다 타사이다. 조각에 대한

//Liste Pieces 
    @ElementList(name="Piece", inline=true) 
    @Path("Pieces") 
    private List<PieceXML> pieces; 

    public List<PieceXML> getpieces() 
    { 
     return pieces; 
    }  

클래스 : 서비스 (만 조각에 대한 표시)에 대한

클래스

@Root(name="Piece") 
public class PieceXML 
{ 

@Attribute 
private Double Qty; 
@Attribute 
private String Desc; 
@Attribute 
private String PO; 
@Attribute 
private Double PrixUnit; 
@Attribute 
private Double Montant; 
...} 

내가 실제로 필요로하는 조각의 속성 값의 배열을 구축하는 것입니다,하지만 정말 그것을하는 방법을 알아낼 수 없습니다. 어떤 도움을 주시면 감사하겠습니다. 미리 감사드립니다.

답변

1

마지막으로 확인 작업을 마쳤습니다. 그것이 꽤 직설적이었던 것으로 밝혀졌습니다. 나는 모든 방법을 가졌지 만 반환 된 객체 목록을 읽을 때 null 값을 얻는 기존 응용 프로그램 클래스와 똑같은 이름의 노드와 관련된 문제가 있었기 때문에 작동하지 못했습니다. 이 경우 나는 그때 내

List<PieceXML> 

객체를 얻을 내 ArrayLists을 채울 수있는 전체 경로 즉

@Path("Service/Pieces"). 

으로

@Path(pathname) 

호출을 사용했다.

+0

ElementList 및 type이 도움이 될 수 있습니다. –