2013-08-05 34 views
0

我有一堆我想要导入的文件。我已将它们分类到不同的目录中。这是我想要做的:从Matlab的另一个目录加载csv文件

file1 = '/directory1/directory2/myfile.csv'; 
M  = csvread(file1,1,0); 

但这不起作用。在命令窗口中的输出是:

Error using csvread 
File not found. 

回答

2

file1 = '/directory1/directory2/myfile.csv'; 

file1 = 'directory1/directory2/myfile.csv'; 

首先是开始在你的文件系统的根目录的绝对路径之间有很大的区别。第二个是相对路径–相对于您当前的工作目录(您在命令窗口中导航到的位置或M文件的位置,请参阅pwd)。您可以使用任何一种形式,但无论您使用哪种形式都需要。如果您的CSV数据位于相对于您的脚本或M文件的特定文件夹中,则很容易使用相对路径。否则,如果您运行位于此数据不同位置的不同脚本,则需要指定绝对路径。

获得给定文件的绝对路径是相对路径(或只是它的名字,如果你在同一个目录里),你可以使用fileattrib功能:

s = fileattrib(file_relpath); 
file_abspath = s.Name; 
+0

完美,是没有的伎俩!我第一次使用'./directory1/file1'并没有工作。 – solalito

+0

@SolalAmouyal:太好了。我只是添加了一点关于通过'fileattrib'找到绝对路径,这可能会有所帮助。 – horchler

相关问题