[R] using paste and "\" to create a valid filename
Prof Brian Ripley
ripley at stats.ox.ac.uk
Fri Aug 19 20:10:12 CEST 2005
On Fri, 19 Aug 2005, roger bos wrote:
> I was surprise myself that I was having problems, because I have been
> doing this for ahile, but I get erros with the RODBC connection. For
> example,
>
> rankFile <- paste("R:\\New Ranks\\SMC\\SMC\\",rankDate,".xls", sep="")
> rankFile
> xls <- odbcConnectExcel(rankFile)
> xls
> rankFile <- "R:\New Ranks\SMC\SMC\20050818.xls"
> rankFile
> xls <- odbcConnectExcel(rankFile)
> xls
>
>
> You won't have my filename, but feel free to try it with any excel
> file you may have. Here is the R output.
Works for me:
> odbcConnectExcel("c:\\bdr\\hills.xls")
RODB Connection 1
Details:
case=nochange
DBQ=c:\bdr\hills.xls
DefaultDir=c:\bdr
Driver={Microsoft Excel Driver (*.xls)}
DriverId=790
MaxBufferSize=2048
PageTimeout=5
> odbcConnectExcel("c:\bdr\hills.xls")
[1] -1
Warning messages:
1: [RODBC] ERROR: Could not SQLDriverConnect
2: ODBC connection failed in: odbcDriverConnect(con)
Please use / as the path separator and become less confused.
>> rankFile <- paste("R:\\New Ranks\\SMC\\SMC\\",rankDate,".xls", sep="")
>> rankFile
> [1] "R:\\New Ranks\\SMC\\SMC\\20050819.xls"
>> xls <- odbcConnectExcel(rankFile)
> Warning messages:
> 1: [RODBC] ERROR: Could not SQLDriverConnect
> 2: ODBC connection failed in: odbcDriverConnect(con)
>> xls
> [1] -1
>> rankFile <- "R:\New Ranks\SMC\SMC\20050818.xls"
>> rankFile
> [1] "R:New RanksSMCSMC¬50818.xls"
>> xls <- odbcConnectExcel(rankFile)
>> xls
> RODB Connection 15
> Details:
> case=nochange
> DBQ=R:New RanksSMCSMC¬50818.xls
> DefaultDir=R:\NEW RANKS\SMC
> Driver={Microsoft Excel Driver (*.xls)}
> DriverId=790
> MaxBufferSize=2048
> PageTimeout=5
>>
>
> On 8/19/05, Uwe Ligges <ligges at statistik.uni-dortmund.de> wrote:
>> roger bos wrote:
>>
>>> Sometimes even the easy stuff is difficult (for me)... I want to get
>>> input from different places to paste together an excel filename (so
>>> you know I'm using windows) that I can open with RODBC. I know about
>>> using double "\" since its an escape character, but I get either 2 or
>>> none, I can't get just one "\" where I need it. See example code
>>> below. I am using R 2.1.0, but plan to upgrade soon. Thanks in
>>> advance to anyone who can help.
>>>
>>> Roger
>>>
>>>
>>> rankPath <- "R:\New Ranks\SMC\SMC"
>>> rankDate <- "20050819"
>>> rankFile <- paste(rankPath,rankDate,".xls", sep="")
>>> rankFile
>>> [1] "R:New RanksSMCSMC20050819.xls"
>>>
>>>
>>> rankPath <- "R:\\New Ranks\\SMC\\SMC"
>>> rankDate <- "20050819"
>>> rankFile <- paste(rankPath,rankDate,".xls", sep="")
>>> rankFile
>>> [1] "R:\\New Ranks\\SMC\\SMC20050819.xls"
>>
>>
>> This is perfect, "\" is *printed* escaped, hence for file access you can
>> perfectly use this character vector.
>>
>> Uwe Ligges
>>
>>
>>> ______________________________________________
>>> R-help at stat.math.ethz.ch mailing list
>>> https://stat.ethz.ch/mailman/listinfo/r-help
>>> PLEASE do read the posting guide! http://www.R-project.org/posting-guide.html
>>
>>
>
> ______________________________________________
> R-help at stat.math.ethz.ch mailing list
> https://stat.ethz.ch/mailman/listinfo/r-help
> PLEASE do read the posting guide! http://www.R-project.org/posting-guide.html
>
--
Brian D. Ripley, ripley at stats.ox.ac.uk
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
More information about the R-help
mailing list