2011-07-02 9 views
0

の利用、Matlabの質問:次のMATLABコードで保存

random_numbers = randn(1,1000); 
j=1; 
for i=1:length(random_numbers) 
if random_numbers(i) > 2.0 
extracted(j) = random_numbers(i); 
j = j + 1; 
end 
end 
save 'sample1' extracted 

我々は次のエラーを取得する:

??? error ==> save 
Unable to write file sample1: permission denied. 

error ==> test at 9 
save 'sample1' extracted 

お知らせください。

答えて

1

permission deniedエラーはあなたが書き込み権限を持っていないためにどのディレクトリに保存しようとしていることを示唆しています。ファイル名のベース名のみを指定したので、saveは、MATファイルを現在の作業ディレクトリに保存しようとします。この作業ディレクトリは、コマンドpwdを実行して判断できます。また

[success, message] = fileattrib 

を実行し、返されたmessageUserWriteフィールドを検査することで、現在のディレクトリのパーミッションを確認することができます。

-1

代わりにこれを試してみてください:

save('sample1', 'extracted'); 

かを:

save sample1 extracted 
0

私は同じ問題があります。これは、現在のディレクトリを変更することで修正できます。 pwdを使用して現在のディレクトリを確認する