seek {base} | R Documentation |
Functions to Reposition Connections
Description
Functions to re-position connections.
Usage
## S3 method for class 'connection'
seek(con, where = NA, origin = "start", rw = "", ...)
## S3 method for class 'connection'
truncate(con, ...)
isSeekable(con)
Arguments
con |
a connection. |
where |
integer. A file position (relative to the origin
specified by |
rw |
character. Empty or |
origin |
character. One of |
... |
further arguments passed to or from other methods. |
Details
seek
with where = NA
returns the current byte offset
of a connection (from the beginning), and with a non-missing where
argument the connection is re-positioned (if possible) to the
specified position. isSeekable
returns whether the connection
in principle supports seek
: currently only file connections do.
File connections can be open for both writing/appending, in which case
R keeps separate positions for reading and writing. Which seek
refers to can be set by its rw
argument: the default is the
last mode (reading or writing) which was used. Most files are
only opened for reading or writing and so default to that state.
If a file is open for reading and writing but has not been used, the
default is to give the reading position (0).
The initial file position for reading is always at the beginning.
The initial position for writing is at the beginning of the file
for modes "r+"
and "r+b"
, otherwise at the end of the
file. Some platforms only allow writing at the end of the file in
the append modes.
truncate
truncates a file opened for writing at its current
position. It works only for file
connections, and is not
implemented on all platforms.
Value
seek
returns the current position (before any move),
as a byte offset, if relevant, or 0
if not.
truncate
returns NULL
: it stops with an error if
it fails (or is not implemented).
isSeekable
returns a logical value, whether the connection is
support seek
.
See Also
connections