1
의 statusnodes는 델파이와 함께 일부 XML 노드를 읽기에 문제가 있습니다. 나는이 XML 코드에서 ID를 읽을 수읽기 ID 및 XML
예 :
<row name="String.101" status="new" comment="">
<native>"User Name"</native>
<lang id="en" status="ready">"User Name"</lang>
<lang id="fr" status="translated">"Nom d'utilisateur"</lang>
<lang id="hu" status="translated">"Felhasználó neve"</lang>
<lang id="it" status="translated">"Nome utente"</lang>
<lang id="zh" status="translated">"用户名"</lang>
<lang id="de" status="ready">"Benutzername"</lang>
</row>
내 프로그램은 나에게 보여해야한다 'EN'에서 "ID ="EN 사용자 이름 "에서" '하지만 나를 보여줍니다 " 줄의 끝. 내 오류 내 델파이 코드에
?
begin
TransNodes := XMLDocument.DocumentElement.ChildNodes['targets'].ChildNodes['target'].ChildNodes['stringdata'].ChildNodes;
for i := 0 to TransNodes.Count -1 do
begin
sContext := TransNodes[i].Attributes['name'];
sOriginalStatus := TransNodes[i].Attributes['status'];
sNativeText := TransNodes[i].ChildNodes['native'].Text;
sLangId := TransNodes[i].ChildNodes['id'].Text;
sStatus := TransNodes[i].ChildNodes['status'].Text;
Delete(sNativeText, Length(sNativeText), 1);
Delete(sNativeText, 1, 1);
Delete(sLangId, Length(sLangId), 1);
Delete(sLangId, 1, 1);
Delete(sStatus, Length(sStatus), 1);
Delete(sStatus, 1, 1);
Memo.Lines.Add(sContext + ' ' + sOriginalStatus + ' ' + sNativeText + ' ' + sLangId + ' ' + sStatus);
은 내가 .Attributes 델파이 shwos 나에게 오류 ... .Attributes와 .ChildNodes 그것을 시도했다.,상태와 동일한 문제입니다. 예를 들어 'status = "ready"'를 원하지만 그는 나에게 아무 것도 보여주지 않습니다.
여러분의 도움과 시간을 주셔서 감사합니다.
죄송합니다. 첫 번째 링크는 잘못되었습니다! 이것이 맞습니다.) https://www.dropbox.com/sh/zoyudjkn4oevtt4/LbHmzPfdpU/Share/2013/10#lh:null-xml%20code.png – Umberto
삭제 (... 코드 라인, 당신은 당신의 결과를 삭제할 수 있습니다? – fuchs777
나는 그것을 시도했지만 아무것도 무슨 일이 생긴 없습니다. 그것은 늘 나에게 내가 필요로하는 메시지를 표시합니다. – Umberto