connections
Functions to Manipulate Connections
Description
Creates, opens, or closes connections.
Usage
file(description = "", open = "", blocking = TRUE,
encoding = getOption("encoding"), raw = FALSE)
pipe(description, open = "", encoding = getOption("encoding"))
fifo(description, open = "", blocking = FALSE,
encoding = getOption("encoding"))
gzfile(description, open = "", encoding = getOption("encoding"),
compression = 6)
unz(description, filename, open = "", encoding = getOption("encoding"))
bzfile(description, open = "", encoding = getOption("encoding"),
compression = 9)
xzfile(description, open = "", encoding = getOption("encoding"),
compression = 6)
url(description, open = "", blocking = TRUE,
encoding = getOption("encoding"),
method = getOption("url.method", "default"))
socketConnection(host = "localhost", port, server = FALSE,
blocking = FALSE, open = "a+", encoding = getOption("encoding"))
open(con, ...)
open.connection(con, open = "r", blocking = TRUE, ...)
isOpen(con, rw = "")
isIncomplete(con)
close(con, ...)
close.connection(con, type = "rw", ...)
flush(con)
flush.connection(con)
print.connection(x, ...)
summary.connection(object, ...)
stdin()
stdout()
stderr()
isatty(con)
Arguments
description |
a character string.
Usually a file path or a URL to manipulate.
It can be "clipboard" to read from the clipboard,
"stdin" to read from 'standard input', or the empty string
"" to create a temporary file (with open mode
"w+" or "w+b") that will be deleted when closed.
For functions that manipulate compressed files, description
is the path to the compressed file.
|
open |
a character string. Specifies how to open the connection. See
Details for all possible values.
For unz, connections can be opened for reading only.
|
blocking |
a logical value. If TRUE, input or output operations on
the connection should be blocked until the desired input or output is
complete. This is currently unsupported, and will generate a warning if
it is specified.
|
encoding |
a character string. Specifies
the character encoding for the connection.
Used for converting between bytes read and written to the connection
and characters in strings.
This can be any of the encodings accepted by iconv,
including "native.enc".
|
filename |
a character string. In unz, this is the name of the file
to be extracted from the zip file (specified by the description
argument).
|
raw |
a logical flag. If TRUE, uses a 'raw' interface to manipulate a
file.
|
compression |
an integer. The value should between 0 to 9, inclusive. Indicates the amount
of compression to use when writing.
|
method |
a character string. Specifies the method to use to retrieve the contents of the
URL. Supported methods are "default", "internal",
"libcurl", and "wininet".
The "wininet" method is supported only on Windows systems.
|
host |
a character string. Specifies the host name to connect to.
|
port |
a integer. Specifies which port number to connect to the host.
|
server |
a logical flag.
- If TRUE, it creates a server socket.
- If FALSE (the default), it creates a client socket.
|
con |
a connection object.
|
rw |
a character string. Specifies the mode to "read" or
"write". Can be empty.
|
type |
a character string. Ignored.
|
x |
a connection object.
|
object |
a connection object.
|
Details
The following functions create connections:
- file
- pipe
- fifo
- gzfile
- unz
- bzfile
- xzfile
- url
- socketConnection
The following functions manage the connection as described:
open | opens a connection and keeps the connection in an open status. |
close | closes a connection. |
flush | flushes the data into the connection.
|
The argument
open can be set to one of the following values:
"r" or "rt" | reading in text mode. |
"w" or "wt" | writing in text mode. |
"a" or "at" | appending in text mode. |
"rb" | reading in binary mode. |
"wb" | writing in binary mode. |
"ab" | appending in binary mode. |
"r+" or "a+b" | reading and writing. |
"w+" or "w+b" | reading and writing, but the file will be truncated initially. |
"a+" or "a+b" | reading and appending. |
|
Value
file | returns a connection object with class attribute "connection".
(see the Value for stdin for more information). |
pipe | this is currently unsupported, and will generate an error if it is called. |
fifo | this is currently unsupported, and will generate an error if it is called. |
url | returns a connection object with class attribute "connection". |
gzfile | returns a connection object with class attribute "connection". |
bzfile | returns a connection object with class attribute "connection". |
unz | returns a connection object with class attribute "connection". |
socketConnection | returns a connection object with class attribute "connection". |
stdin | returns a connection object, with class attribute "connection", to the standard input stream. Note the
following exception: if the engine is run in non-interactive mode, with the script specified via -e or -f,
stdin() is read as an empty stream. To access the actual input stream
directly, use file('stdin','r'). |
stdout | returns a connection object, with class attribute "connection", to the standard output stream. |
stderr | returns a connection object, with class attribute "connection", to the standard error stream. |
open | has no return value. |
close | has no return value. |
flush | has no return value. |
isOpen | returns a logical value to indicate if the connection is open. |
isIncomplete | returns a logical value to indicate whether
the last read attempt was blocked or there is unflushed output.
Currently defined to always return FALSE.
|
isatty | returns a logical value. Returns TRUE if the connection is a
terminal connection. |
Differences between Spotfire Enterprise Runtime for R and Open-source R
- In open-source R, when the engine is run in
non-interactive mode with the script specified via -f,
readLines(stdin()) reads lines from the script file.
In Spotfire Enterprise Runtime for R, in that case, readLines(stdin()) returns character(0).
- In Spotfire Enterprise Runtime for R, the "internal" method of the url function is an alias for "libcurl".
References
Chambers, John M. 1998. Programming with Data. New York, NY: Springer.
See Also
readLines,
writeLines,
cat,
sink,
scan,
parse,
read.dcf,
dput,
dump,
writeLines,
readBin,
writeBin,
readChar,
writeChar,
load,
save,
iconv.
Examples
tmp <- tempfile()
con <- file(tmp, "w")
cat("write data", file = con, sep = "\n")
isOpen(con)
# TRUE
close(con)
readLines(tmp)
# [1] "write data"
unlink(tmp)
## Not run: unz("zippath", "filename", "r")