read.socket {base} | 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=256, loop=FALSE)
    write.socket(socket, string)

### Arguments

`socket` | a socket object
`maxlen` | maximum length 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.

### 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)
    }
    finger("root")  ## only works if your site provides a finger daemon

[Package Contents]