Avatar billede madssch Nybegynder
23. februar 2007 - 10:57 Der er 12 kommentarer og
1 løsning

FileSystemObject og UTF-8

Hej Eksperter,

Jeg har en ASP-funktion, som ved hjælp af FileSystemObject genererer en XML-fil.

Filen skal herefter indlæses i et ERP-system.

Det giver mig nogle problemer, da FSO tilsyneladende ikke kan gemme i UTF-8 format. Sker det så, at filen indeholder æ, ø eller å, er XML-filen ugyldig, og kan derfor ikke indlæses.

Hvad gør jeg?
Avatar billede kalp Novice
23. februar 2007 - 11:00 #1
Gem din Data i CData tag'et.. så bevare du deres originale stand..
Avatar billede kalp Novice
23. februar 2007 - 11:01 #2
CData tag'et er = en CData sektion.

Det vil sige i en Nodes innertext skriver du bare tag'et CDate[og din tekst herhinde istedet.]
Avatar billede madssch Nybegynder
23. februar 2007 - 11:40 #3
Det har jeg prøvet. Forsøger jeg efterfølgende at åbne filen i IE, får jeg en fejl om ugyldige tegn.

Eksempel: <![CDATA[æ]]>
Avatar billede kalp Novice
23. februar 2007 - 12:36 #4
hmm.. forstår jeg ikke..
har din xml encoding sat til UTF-8 ?

<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
Avatar billede madssch Nybegynder
23. februar 2007 - 12:44 #5
Ja, men ikke standalone="yes".

Hvad betyder det?
Avatar billede kalp Novice
23. februar 2007 - 12:58 #6
det du bare slette.. kan ikke huske hvad det betyder, men har det altid på mine:S hehe

men kan du udskrive din xml så man kan validere den? måske er der en fejl i xml'en.. ellers ved jeg det ikke rigtigt.. CDATA tag'et bør ignorere dets indhold.
Avatar billede madssch Nybegynder
23. februar 2007 - 13:13 #7
<booking>

    <bookingData>
   
        <bookingNumber><![CDATA[æ]]></bookingNumber>
        <bookingStartDateTime></bookingStartDateTime>
        <bookingEndDateTime></bookingEndDateTime>
        <bookingFullPrice></bookingFullPrice>
        <bookingType></bookingType>
   
    </bookingData>


    <bookingPerson>
   
        <personName></personName>
        <personAddress></personAddress>
        <personPostalcode></personPostalcode>
        <personCity></personCity>
        <personCountry></personCountry>
        <personPhone></personPhone>
        <personEmail></personEmail>
   
    </bookingPerson>
   
   
    <bookingProduct>
   
        <productItem>
       
            <productNumber></productNumber>
            <productTitle></productTitle>
            <productDescription></productDescription>
            <productPrice></productPrice>
            <productQuantity></productQuantity>
            <productPriceSum></productPriceSum>
       
        </productItem>
   
    </bookingProduct>

</booking>

IE's fejl:

An invalid character was found in text content. Error processing resource 'file:xxx'
  <bookingNumber><![CDATA[
Avatar billede madssch Nybegynder
23. februar 2007 - 13:14 #8
Jeg har selvfølgelig denne i toppen:

<?xml version="1.0" encoding="UTF-8"?>
Avatar billede kalp Novice
23. februar 2007 - 13:43 #9
<?xml version="1.0" encoding="iso-8859-1"?>
<booking>

    <bookingData>
   
        <bookingNumber><![CDATA[æøå]]></bookingNumber>
        <bookingStartDateTime></bookingStartDateTime>
        <bookingEndDateTime></bookingEndDateTime>
        <bookingFullPrice></bookingFullPrice>
        <bookingType></bookingType>
   
    </bookingData>


    <bookingPerson>
   
        <personName></personName>
        <personAddress></personAddress>
        <personPostalcode></personPostalcode>
        <personCity></personCity>
        <personCountry></personCountry>
        <personPhone></personPhone>
        <personEmail></personEmail>
   
    </bookingPerson>
   
   
    <bookingProduct>
   
        <productItem>
       
            <productNumber></productNumber>
            <productTitle></productTitle>
            <productDescription></productDescription>
            <productPrice></productPrice>
            <productQuantity></productQuantity>
            <productPriceSum></productPriceSum>
       
        </productItem>
   
    </bookingProduct>

</booking>
Avatar billede kalp Novice
23. februar 2007 - 13:43 #10
virker fint.. med andet encoding.
Avatar billede kalp Novice
23. februar 2007 - 13:44 #11
tjah.. du behøver slet ikke CData tag'et så:)
du kan bare benytte det andet encoding.
Avatar billede madssch Nybegynder
23. februar 2007 - 13:54 #12
Den har jeg også forsøgt mig med - ligesom du uden fejl.

Men ham som skal sørge for integrationen med Navision siger, at det SKAL være i UTF-8 format. Hvorfor ved jeg helt ærligt ikke.

Vi ser hvad der sker.

Tak for hjælpen!  :)
Avatar billede kalp Novice
23. februar 2007 - 14:01 #13
han kan godt lade det være UTF-8 hvis han f.eks encoder sin tekst til bytes.. så er det ren tal der gemmes og det kan UTF-8 godt forstå.

Når han læser ind igen skal han selvfølgelig decode det igen.

men det er mere arbejde til ham og ikke dig hvis han vil beholde UTF-8

;o)
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