read.socket {utils} | R Documentation

## Read from or Write to a Socket

### Description

`read.socket` reads a string from the specified socket, `write.socket` writes to the specified socket. There is very little error checking done by either.

### Usage

    read.socket(socket, maxlen = 256L, loop = FALSE)
    write.socket(socket, string)

### Arguments

`socket` | a socket object.
`maxlen` | maximum length (in bytes) of string to read.
`loop` | wait for ever if there is nothing to read?
`string` | string to write to socket.

### Value

`read.socket` returns the string read as a length-one character vector.

`write.socket` returns the number of bytes written.

### Author(s)

Thomas Lumley

### See Also

`close.socket`, `make.socket`

### Examples

    finger <- function(user, host = "localhost", port = 79, print = TRUE)
    {
        if (!is.character(user))
            stop("user name must be a string")
        user <- paste(user,"\r\n")
        socket <- make.socket(host, port)
        on.exit(close.socket(socket))
        write.socket(socket, user)
        output <- character(0)
        repeat{
            ss <- read.socket(socket)
            if (ss == "") break
            output <- paste(output, ss)
        }
        close.socket(socket)
        if (print) cat(output)
        invisible(output)
    }
    ## Not run:
    finger("root")  ## only works if your site provides a finger daemon
    ## End(Not run)

[Package utils version 3.4.3 Index]