PDA

View Full Version : Ciclo for e memorizzazione in array


Bandit
05-08-2013, 17:33
Ciao a tutti ragazzi
potete aiutarmi per favore?

sto facendo un programma che vuole interrogare un file.xml ed estrarre le info per metterle in un array.
Precisamente faccio un ciclo for grazie al quale riesco a visualizzare tutti dati che voglio, ma non riesco a memorizzali nell'array che devo completare.


L'estratto è quello che mi da problemi:

allora entro in questo file cercando il campo StateVEctor , campo da interrogare, dentro il quale ho 5 gruppi di 4 figli ciascuno che voglio interrogare che sono : "timestamp" , "xposition", "Ypositio ", "zposition"


col ciclo for in basso ci riesco a visualizzare tutti i dati, però mi manca come memorizzali nell'array che deve avere dimensioni [3,5]
dovrei memorizzare



res5=res4o->GetElementsByTagName('stateVector')
n=res5->GetLength()

n1=fix(n) ;numero di presenze dello stateVector
k=-1

for k=0l, n1-1 do begin
res5o=res5->item(k)
res6=res5o->GetElementsByTagName('timeStamp')
res6b=res6->item(0)
out=res6b->GetFirstChild()
tempo=out->GetNodeValue()

app=tempo
print,"questo è il valore cercato ",app
app1=strsplit(app,"T",/extract)
print,app1(0), " e poi ",app1(1) ;visualizza
app2=strsplit(app1(1),":",/extract)
print,"questa è app2 ",app2 ;visualizza

app3=strsplit(app2(2),".",/extract)
print,"questa è app3 ",app3 ;visualizza
print,"seconda parte di app3 ",strmid(app3(1),0,5)
a=long(app2(0))
a=a*3600
print,"i secondi dalle ore",a
b=app2(1)*60
print,"secondi dai minuti ",b
c=app3(0)
print,"i secondi ",c
d=app3(1)/10e5
print,"i decimali",d
risultato=a+b+c+d
print," i secondi totali ",risultato


res6=res5o->GetElementsByTagName('xPosition')
res6b=res6->item(0)
out=res6b->GetFirstChild()
xpos=out->GetNodeValue()

res6=res5o->GetElementsByTagName('yPosition')
res6b=res6->item(0)
out=res6b->GetFirstChild()
ypos=out->GetNodeValue()

res6=res5o->GetElementsByTagName('zPosition')
res6b=res6->item(0)
out=res6b->GetFirstChild()
zpos=out->GetNodeValue()



print ,""
print,""
print,"numero di seconti totali", risultato
print,"posizione x", xpos
print,"posizione y", ypos
print,"posizione z", zpos
print, ''
print, ''
dim=[ypos,xpos,zpos]
print,"questa è la terna ",dim
print,""
print,""



endfor