MATLAB 在 UBUNTU 中写入文本文件 "invalid permission"

MATLAB writing text file "invalid permission" in UBUNTU

我正在尝试使用 MATLAB 在 UBUNTU 中的 "current folder" 以外的文件夹中写入文本文件。此文件夹位于主目录中,因此不会有权限问题。我正在使用如下所示的代码:

folder = '~/newFolder';
s1=fopen(folder,'newText.txt','w');
fprintf(s1,'hi')
fclose(s1);

但是当我运行程序时,它显示invalid permission错误。值得一提的是,当我尝试在当前文件夹中写入文本时没有问题。我也尝试过 chmod 0777 -R ~/newFolder 修改权限,但没有成功。 我该怎么办?

谢谢

如果你查看 Matlab documentation 中的 fopen,你会看到 permission 中的第二个输入参数(与自己的函数相关,而不是你的 OS):

fileID = fopen(filename)
fileID = fopen(filename,permission)

但是您将文件名作为第二个参数传递。 您需要连接文件路径和文件名:

s1=fopen(strcat(folder, 'newText.txt'),'w');