Avatar billede madssch Nybegynder
09. december 2004 - 13:45 Der er 10 kommentarer og
1 løsning

Konvertering af fil i ASCII-format

Hej Eksperter!

Jeg har en komma-separetet fil i ASCII-format. Yderligere har jeg en ASP-funktion, som viser indholdet af filen. Problemet med ASCII-formatet er tilsyneladende, at det ikke indeholder æ, ø og å.

Min funktion ser således ud:

<%
Const ForReading = 1, ForWriting = 2, ForAppending = 8
Const TristateUseDefault = -2, TristateTrue = -1, TristateFalse = 0

strVarenumre = "AASNI116050,ACKO135050,"
arrVarenumre = Split(strVarenumre, ",")


For i = 0 To UBound(arrVarenumre)
   
    Set objFSO = CreateObject("Scripting.FileSystemObject")
    Set F = objFSO.GetFile("wwwfil.dat")
    Set TextStream = F.OpenAsTextStream(ForReading, TristateFalse)

        Do until TextStream.AtEndOfStream
       
            intLineNumber = intLineNumber + 1   
            strReadLine = Replace(TextStream.ReadLine, """", "")
            arrReadLine = Split(strReadline, ",")
           
            If intLineNumber > 1 And arrVarenumre(i) = arrReadline(0) Then
           
                intPris = Replace(arrReadline(3), ".", ",")
           
                Response.Write arrReadline(0) & " - "
                Response.Write arrReadline(1) & " - "
                Response.Write arrReadline(2) & " - "
                Response.Write FormatNumber(intPris, 2) & "<br />"
               
            End If
       
        Loop
       
    Set TextStream = Nothing
    Set F = Nothing
    Set objFSO = Nothing
   
Next
%>

Constanten "TristateFalse = 0" skulle konvertere filen, men det giver hos mig ingen ændring.

Hvad gør jeg galt.

På forhånd tak!
Avatar billede montago Praktikant
14. december 2004 - 21:09 #1
når du skal printe skal du bare bruge Server.HTMLEncode(str)

så skulle det virke
Avatar billede montago Praktikant
14. december 2004 - 21:12 #2
btw... hvorfor læser du ikke hele filen på een gang... med f.readall

og laver tricks bagefter ?... det hele går hurtigere hvis man arbejder med en variable... eller Array
Avatar billede madssch Nybegynder
16. december 2004 - 08:48 #3
Okay, det vil jeg så prøve bagefter.

Desværre virkede det ikke:

Response.Write Server.HTMLEncode(arrReadline(0)) & " - "
Response.Write Server.HTMLEncode(arrReadline(1)) & " - "
Response.Write Server.HTMLEncode(arrReadline(2)) & " - "
Response.Write FormatNumber(intPris, 2) & "<br />"

Det var det du mente, ikke..?
Avatar billede montago Praktikant
16. december 2004 - 17:04 #4
<test.asp>

<%
strVarenumre = "AASNI116050,ACKO135050"
arrVarenumre = Split(strVarenumre, ",")


For each Vare in arrVarenumre
    Set objFSO = CreateObject("Scripting.FileSystemObject")
    Set f = objFSO.OpenTextFile(Server.MapPath("wwwfil.dat"), 1)
    strAll = f.readall
        strAll = Replace(strAll, """", "")
        lineARR = Split(strAll, vbCRLF)

    For line = 0 to Ubound(lineARR)
        Dimser = split(lineARR(line) , ",")
       
        'If line > 1 And arrVarenumre(i) = Dimser(0) Then
            intPris = Replace(Dimser(3), ".", ",")
            Response.Write Dimser(0) & " - "
            Response.Write Dimser(1) & " - "
            Response.Write Dimser(2) & " - "
            Response.Write FormatNumber(intPris, 2) & "<br>" & vbCRLF
        'End If
    Next
Next
%>



<wwwfil.dat>
AASNI116050,asdmfkm,asndææø,12
AASNI116050,asdfasd,2nm3io,13

<Resultat>
AASNI116050 - asdmfkm - asndææø - 12,00
AASNI116050 - asdfasd - 2nm3io - 13,00
AASNI116050 - asdmfkm - asndææø - 12,00
AASNI116050 - asdfasd - 2nm3io - 13,00
Avatar billede montago Praktikant
16. december 2004 - 17:05 #5
hvis ikke det virker... er det serveren eller browseren som er fucked...

æøå kan drille... men med HTMLEncode bør de ikke !

jo det var rigtigt det du gjorde...
Avatar billede madssch Nybegynder
17. december 2004 - 09:37 #6
Jeg må desværre meddele, at dit eksempel heller ikke hjælper.

Jeg får korrekt udskrevet de 2 varenumre med tilhørende oplysninger, men æ, ø og å ser stadig mærkelige ud.

Kan det være en indstilling på serveren..?
Avatar billede montago Praktikant
17. december 2004 - 10:27 #7
har du prøvet at lave en html side med æøå på, og se om den virker ?
Avatar billede madssch Nybegynder
17. december 2004 - 10:46 #8
Ja, det giver ingen problemer.

Jeg har også prøvet at konvertere filen til ANSI-format og herefter køre funktionen. Så virker det også...

Fatter sgu ikke hvad der går galt...
Avatar billede montago Praktikant
17. december 2004 - 11:26 #9
jeg har selv problemer på Unoeuro's server mht éýú osv... æøå driller også nogen
gange..

min løsning lå i at bruger HTMLEncode!
Avatar billede madssch Nybegynder
17. december 2004 - 11:30 #10
Hmmm... Ja, men det virkede desværre tilsyneladende ikke.

Hvad pokker stiller jeg op med den..?

Kan måske lave en funktion, som læser filen og skriver indholdet til en ny, men ved ikke om det gør nogen forskel..?
Avatar billede madssch Nybegynder
12. april 2005 - 09:57 #11
Lukket
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