I realize I didn't give a solution: scan(con, "", sep="\n")
should do it. On Sun, 20 Apr 2008, Prof Brian Ripley wrote: > On Sun, 20 Apr 2008, Stephen Eglen wrote: > >> Hi, >> >> I have some text files that do not have trailing \n on the last >> (incomplete) line; how do I read in the last line? >> >> e.g. here is a test case: [linux + R version 2.6.1 (2007-11-26) ] >> >> >> z <- gzfile("short.gz", open="w") >> cat("7\n5\n3", file=z) >> close(z) >> >> z <- gzfile('short.gz') >> readLines(z) >> >> [1] "7" "5" >> >> readLines would indicate that for blocking connections (which I assume >> this is), the last line (containing 3) would be read in, and a warning >> would be generated. I get the desired behaviour if I use a file() on >> a file that is not compressed: >> >> y <- file("short", open="w") >> cat("7\n5\n3", file=y) >> close(y) >> >> y <- file('short') >> readLines(y) >> >> [1] "7" "5" "3" >> Warning message: >> In readLines(y) : incomplete final line found on 'short' >> >> What am I missing? > > gzfile is not a text-mode connection, and the help is wrong for those. > E.g. > >> readLines(pipe("gzip -dc short.gz")) > [1] "7" "5" > > does the same. It is only text-mode blocking connections which do this. > > (I just looked at the code, and you might have found that illuminating.) -- Brian D. Ripley, [EMAIL PROTECTED] Professor of Applied Statistics, http://www.stats.ox.ac.uk/~ripley/ University of Oxford, Tel: +44 1865 272861 (self) 1 South Parks Road, +44 1865 272866 (PA) Oxford OX1 3TG, UK Fax: +44 1865 272595 ______________________________________________ R-help@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.