WN

WN (https://www.wn.se/forum/index.php)
-   Serversidans teknologier (https://www.wn.se/forum/forumdisplay.php?f=4)
-   -   UTF-8 i ASP (https://www.wn.se/forum/showthread.php?t=25504)

tartareandesire 2007-12-06 08:12

Skapar en XML-fil på en IIS-server i ASP som nu måste vara i UTF-8, hur går det att fixa till? Har använt följande tidigare:

set fso = createobject("scripting.filesystemobject")

Set act = fso.CreateTextFile(Server.MapPath(file_being_creat ed), true)

[bla bla bla skriva till fil]

Det funkar bra för vanliga ANSI eller Unicode men någon UTF-8 fås inte till.

tartareandesire 2007-12-14 13:25

Någon alls som har lyckats skriva en utf8-fil i ASP eller .NET på IIS-server?

theflowmachine 2007-12-14 15:04

Jag skulle föreslå at du använder "ContentType"-kommandot, dvs:

Response.ContentType = "text/xml"

Du kan även lägga till följande rad i XML-filen:

<?xml version="1.0" encoding="UTF-8" ?>

tartareandesire 2007-12-14 15:15

Citat:

Ursprungligen postat av theflowmachine
Jag skulle föreslå at du använder ContentType-kommandot, dvs:
Response.ContentType = text/xml

Jag kör mintextfil.WriteLine(.....), påverkas verkligen den av Response.ContentType?

Citat:

Ursprungligen postat av theflowmachine
Du kan även lägga till följande rad i XML-filen:
?xml version=1.0 encoding=UTF-8 ?

Den raden finns redan med

theflowmachine 2007-12-14 16:16

Citat:

Originally posted by tartareandesire@Dec 14 2007, 16:15
Jag kör mintextfil.WriteLine(.....), påverkas verkligen den av Response.ContentType?
Nej, sorry. Jag missade att du skapade en fil.

CreateTextFile har följande parametrar, där "unicode" är optional:

FileSystemObject.CreateTextFile(filename[,overwrite[,unicode]])

Dvs.:

Set act = fso.CreateTextFile(Server.MapPath(file_being_creat ed), true, true)

tartareandesire 2007-12-14 16:50

Jo, jag vet, men även när jag sätter true på unicode så blir det inte rätt.

theflowmachine 2007-12-14 16:55

Then it beats me. Lycka till.

tartareandesire 2007-12-14 17:17

Citat:

Originally posted by theflowmachine@Dec 14 2007, 17:55
Then it beats me. Lycka till.

Tackar för hjälpen ändå, du har aldrig prövat själv?

theflowmachine 2007-12-14 17:49

Nej, jag har slutat programmera ASP för länge sen. "Vi" IT-arkitekter träffar sällan fotfolk..., ehrm, jag menar utvecklare. ;)

PaleRider 2007-12-19 18:50

Prova ADODB.Stream istället.

Kod:

function saveXmlToFile(xmlDoc, fileName){
  var adoStream = Server.CreateObject("ADODB.Stream");
  adoStream.Open();
  adoStream.Charset = "UTF-8";
  adoStream.WriteText(xmlDoc.xml);
  adoStream.SaveToFile(Server.MapPath("xml/" + fileName));
  adoStream.Close();
}



Alla tider är GMT +2. Klockan är nu 02:00.

Programvara från: vBulletin® Version 3.8.2
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Svensk översättning av: Anders Pettersson