chunkToLineReader function

Utility that collects data from the HTTP reply into lines and calls user-provided function.

Utility that collects data from the HTTP reply into lines and calls user-provided function.

When one provides an R function to process the body of the R rep

chunkToLineReader(f, verbose = FALSE)

Arguments

  • f: a function that is to be called each time the read function is invoked and there are complete lines in that input.
  • verbose: a logical value. If TRUE, information is displayed when there is any text that does not form a complete line and is held for processing in the next chunk.

Details

This constructs a closure and then processes each chunk as they are passed to the read function. It strips away any text that does not form a complete line at the end of the chunk and holds this to be added to the next chunk being processed.

Returns

A list with two components - read: the function that will do the actual reading from the HTTP response stream and call the function f on each step (assuming the chunk has a line marker.

  • comp2: Description of 'comp2'

...

References

Curl homepage https://curl.se/

Author(s)

Duncan Temple Lang

See Also

getURI and the write argument. getForm, postForm

curlPerform

Examples

# Read a rectangular table of data into R from the URL # and add up the values and the number of values read. summer = function() { total = 0.0 numValues = 0 list(read = function(txt) { con = textConnection(txt) on.exit(close(con)) els = scan(con) numValues <<- numValues + length(els) total <<- total + sum(els) "" }, result = function() c(total = total, numValues = numValues)) } s = summer() ## Not run: ## broken, 2022-07-29 if(url.exists("https://www.omegahat.net/RCurl/matrix.data")) getURL("https://www.omegahat.net/RCurl/matrix.data", write = chunkToLineReader(s$read)$read) ## End(Not run)
  • Maintainer: CRAN Team
  • License: BSD_3_clause + file LICENSE
  • Last published: 2025-03-22

Useful links