• Privacywetgeving
    Het is bij Helpmij.nl niet toegestaan om persoonsgegevens in een voorbeeld te plaatsen. Alle voorbeelden die persoonsgegevens bevatten zullen zonder opgaaf van reden verwijderd worden. In de vraag zal specifiek vermeld moeten worden dat het om fictieve namen gaat.

XML en speciale tekens

Status
Niet open voor verdere reacties.

AnnevdD

Verenigingslid
Lid geworden
8 mei 2007
Berichten
250
Ik heb een systeempje ontwikkeld waarin ik statusinfo over een proces vastleg in XML bestanden. Die XML bestanden lees ik in in een tabel om snel de status te kunnen bekijken.
Maar als er speciale tekens in het xml-bestand zitten dan gaat het fout, hoewel de XML-bestanden UTF-8 zijn.
Zie bijgaand voorbeeld.
Als je in Excel met Ontwikkelaars»XML»Importeren het bestand "statusinfo Testgeval01.xml" importeert gaat het goed maar als je het bijna identieke bestand "statusinfo Testgeval02.xml" importeert krijg je een parserfout omdat er speciale tekens "à" in voorkomen.

Wie kan me helpen hiermee?
 

Bijlagen

Laatst bewerkt:
Dat bestand is ANSI.
Open dat bestand met Kladblok en sla het op met Encoding UTF-8.
Dan zal het importeren probleemloos gaan.
 
Laatst bewerkt:
Ja, je hebt gelijk. Dank.

Ik begrijp het niet, ik dacht echt dat het utf-8 bestanden waren.

Om dat te bereiken maak ik het bestand in VBA aan met:
Set XML_File = FSO.CreateTextFile(bestandsnaam & ".xml", True) 'True om Unicode (UTF-8) te genereren

Dat werkt dus blijkbaar niet. Of ik doe iets fout. Heb jij een idee?
 
Er gaat toch iets niet goed.
Ik heb de create statements aangepast maar er worden nu Unicode bestanden geproduceerd en nu krijg ik de parserfout:
"omschakeling van huidige codering naar opgegeven codering wordt niet ondersteund" met Foutcode -1072896657.
Het ziet er naar uit dat vermelding <?xml version="1.0" encoding="UTF-8" standalone="yes"?> in de eerste regel strijdt met de Unicode codering.

Kan ik in plaats van UTF-8 ook gebruik gaan maken van Unicode en kan ik dan alle speciale tekens in XML bestanden inlezen? Of moet er toch iets worden gedaan om UTF-8 bestanden te maken.
 
Kan je het programma dat je er voor gebruikt hier eens plaatsen?
 
Ja, Ga ik doen. Moet even alle persoonsgerelateerde zaken opruimen.
 
Hierbij een voorbeeld van een deel van het programma dat ik gebruik.
Nu ik uitga van Unicode en dat ook in de eerste regel vermeld gaat het goed.
Maar ik zie geen mogelijkheid om het met UTF-8 te doen.

(Overigens gaat ook het invoeren van de tijd niet goed, als je daarvoor ook een oplossing hebt dan krijg ik die graag)

Vast mijn hartelijke dank voor je medewerking.
 

Bijlagen

Er zit nog een wachtwoord op je xls-bestand.
 
Ja, zo krijg je ook/toch UTF-8 bestanden.
Mooi, deze technieken met stream objecten kende ik nog niet. Ga er echt een beetje studie van maken.
Hartelijk dank voor je hulp en advies.
 
Graag gedaan :)
 
(Overigens gaat ook het invoeren van de tijd niet goed, als je daarvoor ook een oplossing hebt dan krijg ik die graag)
Daar zijn twee zaken voor nodig:
(1) je xml-bestand moet valide datum en tijd gegevens bevatten volgens format: jjjj-mm-dd en hh:mm:ss
(2) het schema dat Excel intern gebruikt moet weten welke elementen tekst, getal, datum en tijd zijn.
Om Excel de kans te geven punt (2) te achterhalen moet je eerst een volledig gevuld en goed xml bestand maken volgens (1).
Open dan een nieuw excel document en maak de mapping mbv dit bestand:
> open het Xml taakvenster > toewijzen > toevoegen > kies het xml bestand.
Excel maakt nu het schema.
> sleep het item Statusinfo naar bijvoorbeeld cel B2
Excel maakt nu de mapping.
> rechts-klik in een van de velden > XML > Importeren, en importeer je test bestand.
Je kunt de gegevens nu ook exporteren.

Leestips:
https://support.microsoft.com/en-us...60b-9f45-5aee47ae23b2&ui=en-us&rs=en-us&ad=us
https://www.w3schools.com/xml/
 
Laatst bewerkt:
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan