xsl-list
[Top] [All Lists]

RE: output encoding problem (can't get UTF-8)

2005-08-07 11:35:53
Ok now I get the document, but guess what: same problem is still there in
the output! Characters Å Ä Ö look the same crap as before...

set oStream = createobject("Adodb.Stream")
oStream.Type = 2
oStream.Charset = "UTF-8"
oStream.open
oStream.writeText o.document
oStream.position = 0
call transform(oStream)

sub transform(oStream)
   xmlDom.load(oStream)

And if I set charset to something else than "UTF-8", or don't specify it at
all (then it probably defaults to Unicode)I get the error (when loading the
XML):
" Switch from current encoding to specified encoding not supported. '<?xml
version="1.0" encoding="utf-8"?>'"

So I'm really lost now.... there's no problem loading the XML document as
UTF-8, so that's what the IXSLProcessor should have to do the transform
on... XSL should then work in Unicode and output it as specied in the
outermost stylesheet (UTF-8).

Is there anything I can try?

/Gabriel


-----Ursprungligt meddelande-----
Från: Joe Fawcett [mailto:joefawcett(_at_)hotmail(_dot_)com]
Skickat: den 7 augusti 2005 19:41
Till: xsl-list(_at_)lists(_dot_)mulberrytech(_dot_)com
Ämne: Re: [xsl] output encoding problem (can't get UTF-8)

----- Original Message -----
From: "Gabriel K" <gabriel(_dot_)klappenbach(_at_)bredband(_dot_)net>
To: <xsl-list(_at_)lists(_dot_)mulberrytech(_dot_)com>
Sent: Sunday, August 07, 2005 3:53 PM
Subject: RE: [xsl] output encoding problem (can't get UTF-8)


I have problems getting this to work.
When I try to load the XML, MSXML reports the following error:
"XML document must have a top level element"

This suggests that it can't read the stream properly.

Do you think it matters that the oStream object is passed as a parameter
in
a function before it is used in xmlDom.load?

I'm now using:

set oStream = createobject("Adodb.Stream")
oStream.Type = 2
oStream.Charset = "Unicode"
oStream.open
oStream.writeText o.document
xmlDom.load(oStream)

(oStream is passed as a sub parameter first though)
I have also tried writing binary (type = 1 and oStream.write), and charset
=
"UTF-8".

Any suggestions?

/Gabriel

After writing to the stream set the position to the start:
oStream.position = 0

Joe

--~------------------------------------------------------------------
XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list
To unsubscribe, go to: http://lists.mulberrytech.com/xsl-list/
or e-mail: 
<mailto:xsl-list-unsubscribe(_at_)lists(_dot_)mulberrytech(_dot_)com>
--~--


--~------------------------------------------------------------------
XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list
To unsubscribe, go to: http://lists.mulberrytech.com/xsl-list/
or e-mail: <mailto:xsl-list-unsubscribe(_at_)lists(_dot_)mulberrytech(_dot_)com>
--~--