Re: reading in text files
Re: reading in text files
- Subject: Re: reading in text files
- From: Lance Bland <email@hidden>
- Date: Fri, 1 Feb 2002 16:49:30 -0500
On Friday, February 1, 2002, at 04:07 PM, Erik M. Buck wrote:
I must have missed part of this thread, but Mac OS-X excels at mapping
large
files into virtual memory enabling random access to the file's contents
using the operating system's pager to move page size chunks in and out
of
memory as needed. The limit to memory mapped files is ~2Gb at this
time.
Why not just use regular binary stream io. You can read in chunks and
won't have to worry about mapping 2Gb.
I could (nearly) implement it in the time it has taken me to read this
entire thread :-)
The minimal syntax change to make it C++ or Obj-C is just window
dressing.
-lance
FREAD(3) System Programmer's Manual
FREAD(3)
NAME
fread, fwrite - binary stream input/output
SYNOPSIS
#include <stdio.h>
size_t
fread(void *ptr, size_t size, size_t nmemb, FILE *stream)
size_t
fwrite(const void *ptr, size_t size, size_t nmemb, FILE *stream)
DESCRIPTION
The function fread() reads nmemb objects, each size bytes long,
from the
stream pointed to by stream, storing them at the location given by
ptr.
The function fwrite() writes nmemb objects, each size bytes long,
to the
stream pointed to by stream, obtaining them from the location given
by
ptr.
RETURN VALUES
The functions fread() and fwrite() advance the file position
indicator
for the stream by the number of bytes read or written. They return
the
number of objects read or written. If an error occurs, or the
end-of-
file is reached, the return value is a short object count (or zero).
The function fread() does not distinguish between end-of-file and
error,
and callers must use feof(3) and ferror(3) to determine which
occurred.
The function fwrite() returns a value less than nmemb only if a
write er-
ror has occurred.
SEE ALSO
read(2), write(2)
STANDARDS
The functions fread() and fwrite() conform to ANSI C3.159-1989
(``ANSI
C'').
BSD Experimental March 8,
1994 1
_______________________________________________
Lance Bland
System Administrator at VVI
mailto:email@hidden
http://www.vvi.com
Realtime, bulk and web data reporting and visualization