Problèmes de caractères avec un fichier XML

Vous débutez et vous avez besoin d'aide ? N'hésitez pas à poser vos questions
lionel_om
Messages : 1500
Inscription : jeu. 25/mars/2004 11:23
Localisation : Sophia Antipolis (Nice)
Contact :

Problèmes de caractères avec un fichier XML

Message par lionel_om »

Bonjour,

Je n'arrive pas à lire correctement mon fichier XML. Lorsque je veux extraire des Strings, les caractères accentués sont déformés. J'ai mis en en-tête dans mon fichier XML que j'utilise un encodage en ISO pourtant, et je force la lecture du fichier XML en utilisant la directive #PB_ASCII.

Voilà mon fichier XML :

Code : Tout sélectionner

<?xml version="1.0" encoding="ISO-8859-1" standalone="yes"?>
<parameters version="1.11 beta">
	<configuration>
		<groups>
			<group name="Games" url="E:\Mes documents\Mes Images\Arrières plan\Autres\">
				<ban>E:\Mes documents\Mes Images\Arrières plan\Autres\Wallpaper Gold.JPG</ban>
			</group>
			<group name="Sweden" url="E:\Mes documents\Mes Images\Photos\2007\12 - Göteborg\wallpapers.txt">
			</group>
			<group name="Copenhague" url="E:\Mes documents\Mes Images\Photos\2007\12 - Göteborg\28 - Copenhague\">
			</group>
		</groups>
	</configuration>
</parameters>
Le programme que j'utilise pour lire le fichier est le suivant :

Code : Tout sélectionner

File$ = "fichier.xml"


Procedure XMLNodeFromPathSafe(*NodeXML, Path$, Exit=#True)
  Protected *NewNode
  *NewNode = XMLNodeFromPath(*NodeXML, Path$)
  If *NewNode = #Null And Exit
    MessageRequester("This node doesn't exist : '"+Path$+"'", "", #MB_ICONWARNING)
    End
  EndIf
  ProcedureReturn *NewNode
EndProcedure




hXML = LoadXML(#PB_Any, File$, #PB_Ascii)
If hXML
  *mainNode = MainXMLNode(hXML)
  If *mainNode
    *confNode = XMLNodeFromPathSafe(*mainNode, "configuration/")
    If *confNode
      
      *groupsNode = XMLNodeFromPathSafe(*confNode, "groups/")
      *groupNode = XMLNodeFromPath(*groupsNode, "group/")
      If *groupNode
        While *groupNode And GetXMLNodeName(*groupNode) = "group"
          a$ =GetXMLAttribute(*groupNode, "url")
          Debug a$
          *groupNode = NextXMLNode(*groupNode)
        Wend
      EndIf
    EndIf
  EndIf
EndIf
Merci de votre aide
Lio
Webmestre de Basic-univers
Participez à son extension: ajouter vos programmes et partagez vos codes !
Dr. Dri
Messages : 2527
Inscription : ven. 23/janv./2004 18:10

Message par Dr. Dri »

t'as essayé en unicode ( utf-8 ) ?

Dri
lionel_om
Messages : 1500
Inscription : jeu. 25/mars/2004 11:23
Localisation : Sophia Antipolis (Nice)
Contact :

Message par lionel_om »

J'ai fait n'importe quoi, j'ai changé les types d'encodage sur le mauvais fichier :?
Donc oui UTF-8 marche bien, alors que ça ne marchait pas correctement avant, avec la version beta de PB !

Lio :)
Webmestre de Basic-univers
Participez à son extension: ajouter vos programmes et partagez vos codes !
brossden
Messages : 833
Inscription : lun. 26/janv./2004 14:37

Message par brossden »

Chez moi ton soft fonctionne parfaitement je ne vois pas ce qui te Chagrine !
Denis

Bonne Jounée à tous
lionel_om
Messages : 1500
Inscription : jeu. 25/mars/2004 11:23
Localisation : Sophia Antipolis (Nice)
Contact :

Message par lionel_om »

C'est le fait d'être passé à la version finale de PB ou d'avoir compilé le fichier en Unicode qui a introduit les problèmes. Mais c'est résolu maintenant !

Lio :wink:
Webmestre de Basic-univers
Participez à son extension: ajouter vos programmes et partagez vos codes !
Répondre