[Rd] Invalid connection after closing?

Duncan Murdoch murdoch.duncan at gmail.com
Fri Apr 8 17:09:30 CEST 2011


On 08/04/2011 10:56 AM, Joris Meys wrote:
> Dear all,
>
> I do not completely understand following behaviour :
>
> >  con<- file("test.txt")
> >  isOpen(con)
> [1] FALSE
> >  open(con)
> >  isOpen(con)
> [1] TRUE
> >  close(con)
> >  isOpen(con)
> Error in isOpen(con) : invalid connection
> >  str(con)
> Classes 'file', 'connection'  atomic [1:1] 3
>    ..- attr(*, "conn_id")=<externalptr>
>
> Why do I get an error, indicating an invalid connection, after I
> closed a connection? Is this to be expected?

Quoting ?close: " ‘close’ closes and destroys a connection. " In the 
current implementation, connections are a finite resource, and you need 
to be able to get rid of them when you are done. close(con) is the way 
to do that. If you want to re-open it, you need to remember the filename 
(or extract it before calling close()), and issue another call to file().

Duncan Murdoch



More information about the R-devel mailing list