我试图使用MATLAB在"当前文件夹"以外的文件夹中写入文本文件。在UBUNTU。此文件夹位于主目录中,因此不存在权限问题。我使用下面显示的代码:
folder = '~/newFolder';
s1=fopen(folder,'newText.txt','w');
fprintf(s1,'hi')
fclose(s1);
但是当我运行程序时,它会显示invalid permission
错误。值得一提的是,当我尝试在当前文件夹中编写文本时,我没有问题。我还尝试chmod 0777 -R ~/newFolder
修改权限但没有成功。
我该怎么办?
由于
答案 0 :(得分:1)
如果您查看Matlab documentation中的fopen
,您会看到permission
中的第二个输入参数(与自己的功能相关而不是您的操作系统):< / p>
fileID = fopen(filename)
fileID = fopen(filename,permission)
但是您将文件名作为第二个参数传递。 你需要连接文件路径和文件名:
s1=fopen(strcat(folder, 'newText.txt'),'w');