pushBack {base} | R Documentation |
Push Text Back on to a Connection
Description
Functions to push back text lines onto a connection, and to enquire how many lines are currently pushed back.
Usage
pushBack(data, connection, newLine = TRUE,
encoding = c("", "bytes", "UTF-8"))
pushBackLength(connection)
clearPushBack(connection)
Arguments
data |
a character vector. |
connection |
a connection. |
newLine |
logical. If true, a newline is appended to each string pushed back. |
encoding |
character string, partially matched. See details. |
Details
Several character strings can be pushed back on one or more occasions.
The occasions form a stack, so the first line to be retrieved will be
the first string from the last call to pushBack
. Lines which
are pushed back are read prior to the normal input from the
connection, by the normal text-reading functions such as
readLines
and scan
.
Pushback is only allowed for readable connections in text mode.
Not all uses of connections respect pushbacks, in particular the input
connection is still wired directly, so for example parsing
commands from the console and scan("")
ignore pushbacks on
stdin
.
When character strings with a marked encoding (see
Encoding
) are pushed back they are converted to the
current encoding if encoding = ""
. This may involve
representing characters as ‘<U+xxxx>’ if they cannot be
converted. They will be converted to UTF-8 if encoding =
"UTF-8"
or left as-is if encoding = "bytes"
.
Value
pushBack
and clearPushBack()
return nothing, invisibly.
pushBackLength
returns the number of lines currently pushed back.
See Also
Examples
zz <- textConnection(LETTERS)
readLines(zz, 2)
pushBack(c("aa", "bb"), zz)
pushBackLength(zz)
readLines(zz, 1)
pushBackLength(zz)
readLines(zz, 1)
readLines(zz, 1)
close(zz)