Avatar billede ibob1000 Nybegynder
09. november 2008 - 20:54 Der er 4 kommentarer

Import af XML fil med danske bogstaver virker ikke korrekt

Hejsa,

Hjælp!! Jeg har en XML fil, som indeholder æøå. Den ser således ud:
<?xml version='1.0' encoding='ISO-8859-1'?>
<orders>
  <order>
      <data>
        <orderno>2</orderno>
        <orderdate>11/03/2008 13:31</orderdate>
        <statedate>11/03/2008 13:30</statedate>
        <invoicedate></invoicedate>
        <transaction_no></transaction_no>
      </data>
      <customer>
        <company></company>
        <name>Peter Jordan</name>
        <cvr></cvr>
        <ean></ean>
        <ref></ref>
        <address1>Sønderdalen 27</address1>
        <address2></address2>
        <postal>2870</postal>
        <city>Dyssegård</city>
        <phone>70262604</phone>
        <email>pj@pickandship.dk</email>
        <country>Danmark</country>
        <comment></comment>
      </customer>
osv.

Når jeg importerer dem med ASP, så bliver æøå byttet ud, med bogstavet der står lige før tegnet. Det betyder at Sønderdalen bliver til SSnderdalen hvor ø er byttet ud med S. Min import i ASP ser således ud:

Set objXML = Server.CreateObject("Microsoft.XMLDOM")
Set objLst = Server.CreateObject("Microsoft.XMLDOM")
objXML.async = false
objXML.Load (A_filename)

If objXML.parseError.errorCode <> 0 Then
    response.write("Load failed")
Else
strOrder_id = objXML.SelectSingleNode("//orderno").text
strDate = objXML.SelectSingleNode("//orderdate").text
strWeight = ""

Set objLst = objXML.getElementsByTagName("customer")
For i = 0 to (objLst.length - 1)
strCustCompany    = objXML.SelectSingleNode("//company").text
strCustName    = objXML.SelectSingleNode("//name").text
strCustAddress    = objXML.SelectSingleNode("//address1").text
strCustAddress2    = objXML.SelectSingleNode("//address2").text
strCustZip    = objXML.SelectSingleNode("//postal").text
strCustCity    = objXML.SelectSingleNode("//city").text
strCustCountry    = objXML.SelectSingleNode("//country").text
if objLst.item(i).getElementsByTagName("comment").item(0).hasChildNodes = true then
strCustComment    = objXML.SelectSingleNode("//comment").text
end if
Next

Please help!!! Jeg har prøvet alt jeg kan finde på!!

Hilsen iBob
Avatar billede nidyahou Praktikant
10. november 2008 - 00:20 #1
jeg hvade fornyligt et æøå problem hvor det hjalp at bruge Server.HTMLENCODE(streng)
Avatar billede nidyahou Praktikant
10. november 2008 - 00:21 #2
derudover kan du prøve at ændre encoding til UTF-8
Avatar billede nidyahou Praktikant
10. november 2008 - 00:21 #3
og også ændre asp encoding med

<%response.charset="UTF-8"%>
Avatar billede ibob1000 Nybegynder
10. november 2008 - 06:52 #4
Så har jeg prøvet de to muligheder af, uden held desværre. Jeg har på fornemmelsen at det er XML Parseren der fortolker æøå forkert. Hvis jeg skriver Unicode koden for æøå i XML filen, så virker det. Men problemet er at jeg ikke generer XML filen. Den modtager jeg fra flere forskellige andre personer, så jeg har ikke mulighed for at rette i den. Med mindre jeg skal lave en funktion, der åbner XML filen, substiturere æøå med unicode koderne, gemmer rettelserne og lukker filen, for så at importere den igen.....
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester