我在尝试阅读.csv文件时遇到问题STATCONNECTORSRVLib (R(D)COM)
.
当我输入这些代码行时,它可以工作:
var sc1 = new STATCONNECTORSRVLib.StatConnector();
sc1.Init("R");
sc1.EvaluateNoReturn("dataset=read.csv(file.choose())");
Run Code Online (Sandbox Code Playgroud)
弹出窗口,我选择文件c:\\
,加载,我可以用它来计算.
但是,当我输入这个几乎完全相同的代码时:
var sc1 = new STATCONNECTORSRVLib.StatConnector();
sc1.Init("R");
sc1.EvaluateNoReturn("dataset=read.csv('C:\\output.csv')");
Run Code Online (Sandbox Code Playgroud)
我得到了这个恼人的例外:
"The server threw an exception. (Exception from HRESULT: 0x80010105 (RPC_E_SERVERFAULT))"
Run Code Online (Sandbox Code Playgroud)
该线dataset=read.csv('C:\\output.csv')
在R控制台中正常工作.
我做错了什么,当我上传时,我的机器如何读取文件,而不是自动上传?
我正在使用:R 2.13.1
来自RandFriend包,并且包含所有内容.操作系统Windows 7,64位
解决方案中的所有项目都是.NET 4,x86
未经测试,但我认为 C# 正在将双反斜杠转换为单反斜杠,然后 R 将其解释为转义序列。尝试将您的字符串更改为
"dataset=read.csv('C:\\\\output.csv')"
Run Code Online (Sandbox Code Playgroud)
或者
@"dataset=read.csv('C:\\output.csv')"
Run Code Online (Sandbox Code Playgroud)
或者
"dataset=read.csv('C:/output.csv')"
Run Code Online (Sandbox Code Playgroud)