[R] Capturing output of a C executable

jim holtman jholtman at gmail.com
Mon Feb 3 03:57:39 CET 2014


?sink

Jim Holtman
Data Munger Guru

What is the problem that you are trying to solve?
Tell me what you want to do, not how you want to do it.


On Sun, Feb 2, 2014 at 8:09 PM, Dennis Fisher <fisher at plessthan.com> wrote:
> R 3.0.1
> OS X
>
> Colleagues,
>
> I am experimenting with incorporating C code into R.  After compiling the C code with:
>         R CMD SHLIB -o FILE.so FILE.c
> and executing:
>         dyn.load("FILE.so")
> (without any errors), I execute the following R functions in a terminal window:
>         READSAS         <- function(sourcefile) .C("readsas", sourcefile)
>         OUTPUT          <- READSAS("../SASFILES/sdrug.sas7bdat")
> R / C then reads a sas7bdat file and sends the contents to the terminal window.
>
> I expected OUTPUT to contain the text that appear in the terminal window (i.e., the contents of the file).  But, that is not the case; OUTPUT contains:
>         [[1]]
>         [1] "../SASFILES/sdrug.sas7bdat"
> It is not clear to my how to capture that appears in the terminal window.
>
> Ultimately, I may need to modify the C code so that the output goes to a file, which I then read into R.  However, it would be better if I did not need to modify the C code.
> Does anyone have any ideas of how I can capture this output within R?
>
> Dennis
>
> Dennis Fisher MD
> P < (The "P Less Than" Company)
> Phone: 1-866-PLessThan (1-866-753-7784)
> Fax: 1-866-PLessThan (1-866-753-7784)
> www.PLessThan.com
>
> ______________________________________________
> R-help at r-project.org mailing list
> https://stat.ethz.ch/mailman/listinfo/r-help
> PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
> and provide commented, minimal, self-contained, reproducible code.




More information about the R-help mailing list