Wurde nun anders gelößt.
###############################################################################################
Moin moin Leute,
entweder bin ich zu blöd, oder es geht echt nicht wie ich es denke.
Persönlich tendiere ich zum ersteren
So
Problem:
Ich habe eine XML File und in dieser XML File hat 1 Relevanter Knoten ein Attribute id="1".
Wie kriege ich die jetzt ausgelesen?
Es dreht sich um den Inhalt bei:
/adhoc/measurements/pair id="1"/df_avg
Das kleine auslese Script von mir schafft es nur, wenn keine ID angegeben ist.
Dann bekomme ein Array mit 12 Leeren Einträgen zurück (Bis $tempField[12])
Was ich ansonsten nutzen könnte für die ID ist mir bisher nicht schlüssig gewurden.
Ausser _XMLGetAttrib.
Aber das holt nur den Wert des Attributs raus...
Und nein, ich kann die XML nicht ändern bzw. ändern lassen.
Für die, welche die XMLDomWrapper gerade nicht zur Hand haben habe ich diese nochmal angefügt.
"XML File"
<adhoc>
<result>2</result>
<result_percent>35.298</result_percent>
<alarm/>
<measurements>
<pair id="1">
<rfc_1889_jitter_average_ms>0.0</rfc_1889_jitter_average_ms>
<jitter_delay_variation_maximum_ms>1.0</jitter_delay_variation_maximum_ms>
<transaction_rate_avg_sec>0.0</transaction_rate_avg_sec>
<throughput_avg_mbps>0.008</throughput_avg_mbps>
<percent_bytes_lost_e1_to_e2>0.0</percent_bytes_lost_e1_to_e2>
<response_time_avg_sec>0.0</response_time_avg_sec>
<maximum_consecutive_lost_datagrams>0.0</maximum_consecutive_lost_datagrams>
<oneway_delay_average_ms>0.1</oneway_delay_average_ms>
<packet_count>0</packet_count>
<df_avg>0.0</df_avg>
<mos_average>4.03</mos_average>
<datagrams_out_of_order_e1_e2>0</datagrams_out_of_order_e1_e2>
</pair>
<pair id="2">
<rfc_1889_jitter_average_ms>0.0</rfc_1889_jitter_average_ms>
<jitter_delay_variation_maximum_ms>2.0</jitter_delay_variation_maximum_ms>
<transaction_rate_avg_sec>0.0</transaction_rate_avg_sec>
<throughput_avg_mbps>0.008</throughput_avg_mbps>
<percent_bytes_lost_e1_to_e2>0.0</percent_bytes_lost_e1_to_e2>
<response_time_avg_sec>0.0</response_time_avg_sec>
<maximum_consecutive_lost_datagrams>0.0</maximum_consecutive_lost_datagrams>
<oneway_delay_average_ms>0.2</oneway_delay_average_ms>
<packet_count>0</packet_count>
<df_avg>0.0</df_avg>
<mos_average>4.03</mos_average>
<datagrams_out_of_order_e1_e2>0</datagrams_out_of_order_e1_e2>
</pair>
</measurements>
<thresholds>
<pair id="1"></pair>
<pair id="2"></pair>
</thresholds>
</adhoc>
Alles anzeigen
"Code zum Auslesen"
#include <_XMLDomWrapper.au3>
#include <Array.au3>
$open = _XMLFileOpen(!!!PFAD ZUR XML BEI EUCH EINTRAGEN!!!)
ConsoleWrite("$open " & @TAB & $open & @CRLF)
If $open == 1 Then
$pfad = "/adhoc/measurements/pair"
$tempValue = _XMLGetValue($pfad)
ConsoleWrite("$tempValue " & @TAB & $tempValue & @CRLF)
ConsoleWrite("!@error " & @error & "| @extended " & @extended & @CRLF)
If IsArray($tempValue) Then
For $i = 0 To $tempValue[0] Step 1
ConsoleWrite("$tempValue["& $i & "] " & @TAB & $tempValue[$i] & @CRLF)
Next
EndIf
ConsoleWrite("-#####################################################" & @CRLF)
$tempField= _XMLGetField($pfad)
ConsoleWrite("$tempField" & @TAB & $tempField& @CRLF)
ConsoleWrite("!@error " & @error & "| @extended " & @extended & @CRLF)
If IsArray($tempField) Then
For $i = 0 To $tempField[0] Step 1
ConsoleWrite("$tempField["& $i & "] " & @TAB & $tempField[$i] & @CRLF)
Next
EndIf
_ArrayDisplay($tempField[1])
EndIf
Exit
[/autoit]Danke schonmal fürs anstrengen eure Hirnzellen
mfg lachi