Clear Filters
Clear Filters

"dmatrix=r​eadmatrix(​"data.txt"​)"で大きなデータを​読み込む際に,"fr​ead failed: error : Invalid argument for \\filepath of data.txt"と​表示された。しかし,​data.txtが問​題なく読まれたようで​あるが、そのエラーの​原因などをご教示願い​します。

8 views (last 30 days)
b=readmatrix("Euler_angles");
>> ReadEulerAngles
fileStream::DetectCharset():fread failed: error : Invalid argument for \\ndata01\documents\0020_オーステナイト系ステンレス鋼溶接部\溶接CAFDデータ(2023.4.17) 1620度 CAセル0.63mm\Euler_angles.txt
  4 Comments
Atsushi Ueno
Atsushi Ueno on 30 Apr 2023
なるほど確かにサイズの大きいファイルですね。下記を確認すると問題の原因を切り分ける事が出来ると思います。
  • ローカルパスの場所に5.6GB程度のファイルを置いてアクセスしても同じエラーが出るか
  • UNCパスの当該箇所に数MB程度のファイルを置いてアクセスしても同じエラーが出るか
ワークスペースに読み込む配列サイズの最大値は以下の方法で設定でき、OSで管理されるメモリを最大限まで使える様に設定できます。[ホーム] タブの [環境] セクションで [基本設定] をクリック、 [MATLAB][ワークスペース] を選択します。※ MATLAB Online では「最大配列サイズの基本設定」が環境によって設定され、変更出来ない様です。私が試したMATLAB Online 環境では「最大配列サイズの基本設定」が 5.0GB でした。
fileStream::DetectCharset():fread failed: error : Invalid argument
上記のエラーはやはりパスに下記の様な原因があるのではないかと思います。
  • UNCパス
  • パスに含まれる2バイト文字
  • パスに含まれる(半角)スペース文字
Atsushi Ueno
Atsushi Ueno on 30 Apr 2023
>ファイルサイズが小さな場合にはこのような問題がなかったのですが、
すいません。そういう事でしたね。
大きなファイルにアクセスする為の方法を用いるのは如何でしょうか?

Sign in to comment.

Answers (0)

Products


Release

R2022b

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!