2

このようなファイルを読む必要があります

10001   3          5.0000      30.0         0.0000      25.6         0.0000      10.0
10002   1         25.0000                   0.0000                   4.6887      58.2
10003   5         45.0000      20.0         0.0000                  14.7608          
10004   5         65.0000                   0.0000                   8.8791          
10005   1         85.0000                   0.0000                   6.3128      00.0

ファイル形式は「%5i%5i%%10.4f%8.1f%10.4f%8.1f%10.4f%8.1f」のようになります

次のコードを使用しています

n_xyz_filename = input('\nSelect the file. ', 's');
n_xyz_file = fopen(n_xyz_filename, 'r');
n_xyz = textscan(n_xyz_file, '%5i%5i%10.4f%8.1f%10.4f%8.1f%10.4f%8.1f');
fclose(n_xyz_file);

しかし、私は次のエラーを受け取り続けます

??? ==> textscan の使用中にエラーが発生しました。フォーマット文字列の形式が正しくありません。

私は本当にそれを取得することはできません !

編集

答えが言ったように、正しいコードは次のとおりです。

n_xyz_filename = input('\nSelect the file. ', 's');
n_xyz_file = fopen(n_xyz_filename, 'r');
n_xyz = textscan(n_xyz_file, '%5d%5d%10.4f%8.1f%10.4f%8.1f%10.4f%8.1f');
fclose(n_xyz_file);

「i」の代わりに「d」(10 進数の略)を使用

4

1 に答える 1