datagott > comp.* > comp.programmeren

Jawade (29.07.2018, 22:49)
Bestaat er een opdracht om een bestand kleiner te maken, in FreeBASIC?
Bijvoorbeeld: LOF(1) = 1024

Met vriendelijke groeten, Jawade.
Cohen (30.07.2018, 08:57)
On 29-07-18 22:49, Jawade wrote:
> Bestaat er een opdracht om een bestand kleiner te maken, in FreeBASIC?
> Bijvoorbeeld: LOF(1) = 1024
> Met vriendelijke groeten, Jawade.


ftruncate ?
Jawade (30.07.2018, 12:41)
Cohen <cohen> schreef op Mon, 30 Jul 2018 08:57:48 +0200 in artikel <pjmctb$89h$1>:
> On 29-07-18 22:49, Jawade wrote:
> > Bestaat er een opdracht om een bestand kleiner te maken, in FreeBASIC?
> > Bijvoorbeeld: LOF(1) = 1024
> > Met vriendelijke groeten, Jawade.

> ftruncate ?


Dank. Maar helaas, dat bestaat niet.

Met vriendelijke groeten, Jawade.
Jan van den Broek (30.07.2018, 14:09)
On 2018-07-29, Jawade <Henk_Jawade> wrote:
> Bestaat er een opdracht om een bestand kleiner te maken, in FreeBASIC?
> Bijvoorbeeld: LOF(1) = 1024


Het staat mij bij dat je dat vroeger, in MS-Dos, kon met een write-opdracht
van nul bytes, op het punt waar je het einde van het bestand wilde hebben.
Waarschijnlijk werkt dat nu niet meer.
Cohen (30.07.2018, 14:12)
On 30-07-18 12:41, Jawade wrote:
> Cohen <cohen> schreef op Mon, 30 Jul 2018 08:57:48 +0200 in artikel <pjmctb$89h$1>:
>> On 29-07-18 22:49, Jawade wrote:
>>> Bestaat er een opdracht om een bestand kleiner te maken, in FreeBASIC?
>>> Bijvoorbeeld: LOF(1) = 1024
>>> Met vriendelijke groeten, Jawade.

>> ftruncate ?

> Dank. Maar helaas, dat bestaat niet.


Niet?! Wat is dat voor programmeertaal?

Kijk dan hier maar eens:

<https://rosettacode.org/wiki/Truncate_a_file>
Jawade (30.07.2018, 19:07)
Jan van den Broek <balglaas> schreef op Mon, 30 Jul 2018 12:09:32 +0000 (UTC) in artikel <pjmv5s$177e$1>:
> On 2018-07-29, Jawade <Henk_Jawade> wrote:
> > Bestaat er een opdracht om een bestand kleiner te maken, in FreeBASIC?
> > Bijvoorbeeld: LOF(1) = 1024

> Het staat mij bij dat je dat vroeger, in MS-Dos, kon met een write-opdracht
> van nul bytes, op het punt waar je het einde van het bestand wilde hebben.
> Waarschijnlijk werkt dat nu niet meer.


Ik kende die niet, maar ik denk ook niet dat dat nog werkt.

Met vriendelijke groeten, Jawade.
Jawade (30.07.2018, 19:09)
Cohen <cohen> schreef op Mon, 30 Jul 2018 14:12:02 +0200 in artikel <pjmvah$17tj$1>:
> On 30-07-18 12:41, Jawade wrote:
> Niet?! Wat is dat voor programmeertaal?
> Kijk dan hier maar eens:
> <https://rosettacode.org/wiki/Truncate_a_file>


Mooie taal hoor, FreeBASIC.

Ja, zo doe ik het ook, met een temp file. Maar dat wil ik nou juist
vermijden. Groter maken kan gewoon, dus ik dacht...

Met vriendelijke groeten, Jawade.
Cohen (31.07.2018, 13:37)
On 30-07-18 19:09, Jawade wrote:
> Cohen <cohen> schreef op Mon, 30 Jul 2018 14:12:02 +0200 in artikel <pjmvahtj>:
> Mooie taal hoor, FreeBASIC.
> Ja, zo doe ik het ook, met een temp file. Maar dat wil ik nou juist
> vermijden. Groter maken kan gewoon, dus ik dacht...


Een echte programmeertaal ondersteunt een file truncate. Misschien moet
je eens wisselen van programmeertaal. Het wordt tijd...
Jawade (31.07.2018, 21:34)
Cohen <cohen> schreef op Tue, 31 Jul 2018 13:37:41 +0200 in artikel <pjphm4$1btp$1>:
> On 30-07-18 19:09, Jawade wrote:
> Een echte programmeertaal ondersteunt een file truncate. Misschien moet
> je eens wisselen van programmeertaal. Het wordt tijd...


Voor zover ik zie, gebruiken andere talen ook een temp file of een
stringvariabele. In elk geval wordt de file herschreven en dat wil
ik juist vermijden omdat dat bij grote files een behoorlijk lange
tijd kost.

Met vriendelijke groeten, Jawade.
Rob (31.07.2018, 23:01)
Jawade <Henk_Jawade> wrote:
> Cohen <cohen> schreef op Tue, 31 Jul 2018 13:37:41 +0200 in artikel <pjphm4btp>:
> Voor zover ik zie, gebruiken andere talen ook een temp file of een
> stringvariabele. In elk geval wordt de file herschreven en dat wil
> ik juist vermijden omdat dat bij grote files een behoorlijk lange
> tijd kost.


Het probleem met jou is dat je maar zo weinig wilt zien... dat is
niet de eerste keer.

NAME
truncate, ftruncate - truncate a file to a specified length

SYNOPSIS
#include <unistd.h>
#include <sys/types.h>

int truncate(const char *path, off_t length);
int ftruncate(int fd, off_t length);

DESCRIPTION
The truncate() and ftruncate() functions cause the regular file named
by path or referenced by fd to be truncated to a size of precisely
length bytes.

If the file previously was larger than this size, the extra data is
lost. If the file previously was shorter, it is extended, and the
extended part reads as null bytes ('\0').

The file offset is not changed.

Dit is gewoon een standaard library functie die je vanuit allerlei
talen kunt gebruiken. Behalve FreeBASIC kennelijk.
Jawade (01.08.2018, 19:35)
Rob <nomail> schreef op Tue, 31 Jul 2018 21:01:59 GMT in artikel <slrnpm1ji7.jkr.nomail>:
[..]
> The file offset is not changed.
> Dit is gewoon een standaard library functie die je vanuit allerlei
> talen kunt gebruiken. Behalve FreeBASIC kennelijk.').
> The file offset is not changed.
> Dit is gewoon een standaard library functie die je vanuit allerlei
> talen kunt gebruiken. Behalve FreeBASIC kennelijk.


De talen waain ik het getest heb, schrijven ook de hele file over,
dus je wordt feitelijk gefopt. Zo doe ik het n.l. ook, behalve als
de file even groot blijft of groter wordt, dan is dat niet nodig.
Bij files tot enkele MB's maakt het niet uit, maar bij files die
GB's groot zijn, duurt het toch wel even.

Oh ja, standaard library functies kan FreeBASIC ook prima mee uit de
voeten. Ik schiet er dus alleen niets mee op.

Met vriendelijke groeten, Jawade.
Rob (01.08.2018, 23:21)
Jawade <Henk_Jawade> wrote:
> De talen waain ik het getest heb, schrijven ook de hele file over,
> dus je wordt feitelijk gefopt. Zo doe ik het n.l. ook, behalve als
> de file even groot blijft of groter wordt, dan is dat niet nodig.
> Bij files tot enkele MB's maakt het niet uit, maar bij files die
> GB's groot zijn, duurt het toch wel even.


Kennelijk allemaal van die prutstalen. Ik heb dit wel eens gebruikt
om van SD card gecopieerde images te verkleinen en ik weet zeker dat
het niet zo werkte want dan zou het inderdaad lang duren en dat deed
het dus niet.

> Oh ja, standaard library functies kan FreeBASIC ook prima mee uit de
> voeten. Ik schiet er dus alleen niets mee op.


Dan niet!
Soortgelijke onderwerpen