/
Forside
/
Teknologi
/
Udvikling
/
VB/Basic
/
Nyhedsindlæg
Login
Brugernavn
*
Kodeord
*
Husk mig
Brugerservice
Kom godt i gang
Bliv medlem
Seneste indlæg
Stil et spørgsmål
Skriv et tip
Pointsystemet
Kontakt Kandu.dk
Emnevisning
Kategorier
Alfabetisk
Karriere
Interesser
Teknologi
Reklame
Top 10 brugere
VB/Basic
#
Navn
Point
1
berpox
2425
2
pete
1435
3
CADmageren
1251
4
gibson
1230
5
Phylock
887
6
AntonV
790
7
strarup
750
8
Benjamin...
700
9
tom.kise
610
10
EXTERMINA..
600
Ændret fillængde ved skrivning/læsning af ~
Fra :
Frederik Jensen
Dato :
27-05-03 09:20
Hej Gruppe
Jeg er løbet ind i et lidt mystisk scenarie jeg ikke helt kan gennemskue.
Det drejer sig om et simpelt VB6 program der skriver og læser en fil.
Jeg har en string i hukommelsen. Vha. funktionen [Len] aflæser jeg længden
til X. Jeg skriver nu stringen til en fil vha. funktionerne [Open/Print].
Herefter indlæser jeg filen igen vha. [Open/Input]. Jeg aflæser længden af
stringen til X +2 (bytes). Gentages scenariet vil længden af det oprindelige
X blive aflæst til X + 4.
Jeg har en teori om at det er operativsystemet der tilskriver
filinformationer, men undre mig over den stiger for hver
skrivning/læsning/aflæsning.
Nogen der kan kaste lys over sagen?
pft
--
Frederik Jensen, Judex
Patrick Hayes (
27-05-2003
)
Kommentar
Fra :
Patrick Hayes
Dato :
27-05-03 11:39
> Jeg har en string i hukommelsen. Vha. funktionen [Len] aflæser jeg længden
> til X. Jeg skriver nu stringen til en fil vha. funktionerne [Open/Print].
> Herefter indlæser jeg filen igen vha. [Open/Input]. Jeg aflæser længden af
> stringen til X +2 (bytes). Gentages scenariet vil længden af det
oprindelige
> X blive aflæst til X + 4.
Mit gæt er følgende:
Der bliver sat enten CR + LF eller EOF(ctrl-Z ?) i enden af din string når
den skrives til filen. Når du så læser hele filen, får du din slut-marker
med.
- patrick
Bjørnar Nilsen (
27-05-2003
)
Kommentar
Fra :
Bjørnar Nilsen
Dato :
27-05-03 11:41
Hei
Har ikke sjekket dette, men kanskje er det dette som skjer i ditt tilfelle:
I filen blir det lagret (usynlige) tegn for "carriage return" og "line
feed".
Dette representeres med ascii-kode 10 og 13, og kan tilføres en streng ved å
bruke funksjonene chr(10) og chr(13).
Prøv å sjekk siste (alternativt de to siste posisjonene i strengen din - X)
etter at du har skrevet og lest fra filen.
eks:
iKode = chr(right(X, 1))
Hvis iKode er 10 eller 13, har du enten en "carriage return" og/eller en
"line feed" i strengen din (X).
mvh
Bjørnar Nilsen
"Frederik Jensen" <fj@judex.dk> skrev i melding
news:bav73d$rp7$1@news.cybercity.dk...
> Hej Gruppe
>
> Jeg er løbet ind i et lidt mystisk scenarie jeg ikke helt kan gennemskue.
> Det drejer sig om et simpelt VB6 program der skriver og læser en fil.
>
> Jeg har en string i hukommelsen. Vha. funktionen [Len] aflæser jeg længden
> til X. Jeg skriver nu stringen til en fil vha. funktionerne [Open/Print].
> Herefter indlæser jeg filen igen vha. [Open/Input]. Jeg aflæser længden af
> stringen til X +2 (bytes). Gentages scenariet vil længden af det
oprindelige
> X blive aflæst til X + 4.
>
> Jeg har en teori om at det er operativsystemet der tilskriver
> filinformationer, men undre mig over den stiger for hver
> skrivning/læsning/aflæsning.
>
> Nogen der kan kaste lys over sagen?
>
> pft
>
> --
> Frederik Jensen, Judex
>
>
Søg
Alle emner
Teknologi
Udvikling
VB/Basic
Indstillinger
Spørgsmål
Tips
Usenet
Reklame
Statistik
Spørgsmål :
177817
Tips :
31980
Nyheder :
719565
Indlæg :
6410968
Brugere :
218912
Månedens bedste
Årets bedste
Sidste års bedste
Copyright © 2000-2026 kandu.dk. Alle rettigheder forbeholdes.