/ Forside / Teknologi / Udvikling / VB/Basic / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
VB/Basic
#NavnPoint
berpox 2425
pete 1435
CADmageren 1251
gibson 1230
Phylock 887
gandalf 836
AntonV 790
strarup 750
Benjamin... 700
10  tom.kise 610
vb 6.0 skrive til en fil i valid XML
Fra : Mogens Dyhre Hansen


Dato : 22-12-03 08:43

Hej

Jeg prøver på at lave et RSS feed via min nyhedsscanner! jeg har dog et par
problemer.
første prob. er at når jeg skriver en string til min fil så kommer der en "
i starten og slutning af filen og det er jo ikke valid XML
så hvordan får jeg det ind i filen uden " ?

Dim mystring As String
Dim strDoc As String
Dim strVersion As String

strDoc = "<?xml version=" & Chr$(34) & "1.0" & Chr$(34) & " encoding=" &
Chr$(34) & "iso-8859-1" & Chr$(34) & " ?>"
strVersion = "<rss version=" & Chr$(34) & "2.0" & Chr$(34) & ">"

mystring = strDoc & Chr$(13) + Chr$(10) & strVersion & Chr$(13) ovs.

Open "rssfeed.xml" For Output As #1
Write #1, mystring
Close #1

2'ende problem!

kan man i vb HTMLencode en string så det blive valid XML?

3'ende ting!

er jeg begyndt forkert? skal jeg istedet lægge min fundene nyheder i en
database og derfra via asp lave mit feed?


--
Mvh. Mogens D. Hansen Find med Svend-bent - http://www.svend-bent.dk/
MSM Scan http://www.svend-bent.dk/msm/ Links og søgemaskine
http://www.troutfarmer.dk/



 
 
Tomas Christiansen (22-12-2003)
Kommentar
Fra : Tomas Christiansen


Dato : 22-12-03 14:35

Mogens Dyhre Hansen skrev:
> ...når jeg skriver en string til min fil så kommer der en "
> i starten og slutning af filen

Det skyldes at du skriver til filen med Write - du skal bruge Print i
stedet.

> strDoc = "<?xml version=" & Chr$(34) & "1.0" & Chr$(34) & " encoding=" &
> Chr$(34) & "iso-8859-1" & Chr$(34) & " ?>"
> strVersion = "<rss version=" & Chr$(34) & "2.0" & Chr$(34) & ">"
>
> mystring = strDoc & Chr$(13) + Chr$(10) & strVersion & Chr$(13) ovs.

Pas på med at bruge + til streng-konkatenering (du bruger det i "Chr$(13) +
Chr$(10)"). Hvis ét eller begge argumenter er numeriske, får du nogle ganske
uventede resultater. Hold dig hellere altid til & - så gennemtvinger du
automatisk en til-streng-konvertering af begge argumenter, inden de
konkateneres.

Bemærk i øvrigt at ovenstående også skrives som (mere læsevenligt efter min
mening):

strDoc = "<?xml version=""1.0"" encoding=""iso-8859-1"" ?>"
strVersion = "<rss version=""2.0"">"
mystring = strDoc & vbNewLine & strVersion & vbCR ovs.

> 2'ende problem!
>
> kan man i vb HTMLencode en string så det blive valid XML?

Hvad mener du med at HTML-encode?
Hvis du angiver i din XML, at du bruger ISO-8859-1, så skal du naturligvis
selv sørge for at det er ISO-8859-1. Du skal også selv sørge for at de 5
tegn, som ikke må forekomme direkte, bliver eskapet på behørlig vis. Alle de
andre XML-regler skal du naturligvis også selv overholde!
Med andre ord: Hvis du selv vil danne XML på den måde, bør du gå ind på
W3C's hjemmeside og læse de få hundrede sider, som beskriver reglerne for
XML.

Alternativt _kan_ du jo benytte en XML.parser som så vil gøre hele arbejdet
for dig, og sikre at det bliver validt XML.

-------
Tomas


Søg
Reklame
Statistik
Spørgsmål : 177557
Tips : 31968
Nyheder : 719565
Indlæg : 6408878
Brugere : 218888

Månedens bedste
Årets bedste
Sidste års bedste