Bonjour,
j'ai delphixe7
J'ai un fichier xml avec cette structure (que j'ai coupé):
Code xml : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18 <?xml version="1.0" encoding="UTF-8"?> <jo:ann xmlns:jo="http://journal-officiel/XML/3.2.5"> <HTML><![CDATA[<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" lang="FR"> <head> <style type="text/css">.fr-h4 { font-weight: 700 !important; margin: 0.5rem 0 0.5rem 0rem!important; font-size: 1.4rem !important; line-height: 2rem !important; } .fr-h5, .fr-h5 + .fr-text--bold { font-weight: 700 !important; margin: 0.5rem 0 0.5rem 0rem !important; font-size: 1.3rem !important; line-height: 2rem !important; } .section { padding: 6px 6px 6px 36px; } .fr-text--bold { font-weight: bold; } .center { text-align: center; } </style> <title>Avis informatif - Avis n° 1A du 08/09/2023</title> <meta name="subject" content="Avis informatif"/> <meta name="author" content="Direction de linformation légale "/> <meta name="description" content="Avis informatif - Avis n° 1A du 08/09/2023 sur le site "/> </head> </HTML>]]> </jo:ann>
comment puis je lire le node html ?
Si je n'ai pas le namespace, j'y arrive, mais avec il ne me le trouve pas
j'ai ce code
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49 function TMainForm.TestIfNodeExist(var aXmlDoc : TXMLDocument;aPATHNode : string) : boolean; var aLst : TStringList; tmpnode : IXMLNode; i : Integer; begin tmpnode :=nil; result:= True; aLst := TStringList.Create; try aLst.Delimiter := ';'; aLst.StrictDelimiter := True; aLst.DelimitedText := aPATHNode; try for i:= 0 to aLst.Count-1 do begin if tmpnode = nil then begin if aXmlDoc.ChildNodes.FindNode(aLst.Strings[i]) = nil then begin Result := False; exit; end; tmpnode :=aXmlDoc.ChildNodes.Nodes[aLst.Strings[i]]; end else begin if tmpnode.ChildNodes.FindNode( aLst.Strings[i]) = nil then begin Result := False; exit; end; tmpnode.ChildNodes.Nodes[aLst.Strings[i]]; end; end; except on ex: Exception do begin result := false; AddToErrorLog('TestIfNodeExist - '+aPATHNode+' : '+ex.Message); end; end; finally aLst.Free; end; end; if (TestIfNodeExist(XMLDocument1,'jo:ann;HTML')) then ...
merci
Partager