2012-04-03 11 views
0

を分割しますが、トラブルはエラーメッセージ無効なファイル名は、JJは、FNの値になり、ここで

を取得IAMあります? ==> fopenを使用しているエラー ファイル名が無効です。

DirName = 'Samples\mattest\jj'; 
FileName = split('\\',DirName); 

[a,b] = size(FileName); 
FN = FileName(b); 

file_1 = fopen(FN,'w'); 

分割方法は、コードのdoesnt http://www.mathworks.com/matlabcentral/fileexchange/4873

で発見された正しいように見えますか?誰かが私を助けてくれますか?

答えて

1

FOPENの第1引数は、ファイル名(ファイルが現在の作業ディレクトリにある場合)またはファイルのフルパスでなければなりません。

なぜあなたはパスを分割していますか? jjはファイルまたはディレクトリの名前ですか?ディレクトリにFOPENを使用することはできません。

MATLABのFILEPARTS機能を使用することをお勧めしますディレクトリ名、ファイル名や拡張子にファイルへの完全なパスを分割します。

文字列を分割する場合、特殊な分割機能は必要ありません。ビルドインのREGEXPは次のよ​​うに役に立ちます:

parts = regexp(dirname, '\\', 'split'); 
+0

このエラーが発生する理由は、FN文字列に2つの不正な文字が含まれているためです。誰もそれらを削除する方法を知っていますか? – klijo

+0

'strrep(FN、char(char_code)、 '')' – yuk

+1

再度REGEXPを使用しようとします。それはあなたに違法な文字を与えるべきではありません。 – yuk

関連する問題