Bonjour,

Je lis très souvent le forum MATLAB et j'y trouve souvent la solution à mes problèmes mais je sèche là sur une difficulté que je ne parviens pas à résoudre.

Voici le fichier "importer.prn" que je voudrais lire :

Time Speed Acc_X ACC_Y
0:000 204.1 0.58 -0.07
0:010 204.3 0.59 -0.07
0:020 204.4 0.59 -0.09
0:030 204.6 0.60 -0.07
0:040 204.9 0.59 -0.05
0:050 205.1 0.59 -0.08
0:060 205.5 0.59 -0.08
0:070 205.9 0.58 -0.08
0:080 206.3 0.58 -0.10
0:090 206.6 0.59 -0.10
0:100 206.8 0.59 -0.06
(etc...)
Voici le code, surement maladroit, que j'ai écrit pour lire ces données :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
function lecture
ouvrir = fopen('importer.prn');
Mlec = textscan(ouvrir,'%s%s%s%s');
fclose(ouvrir);
N(:,1)=Mlec{1}; N(:,2)=Mlec{2};
N(:,3)=Mlec{3}; N(:,4)=Mlec{4};
N(:,1)=strrep(N(:,1),':','.');
M=N(2:end,:);
M(8,1)
str2num(M(8,1))
end
Voici l'erreur que j'ai en retour :

>> lecture

ans =

'0.070'

??? Error using ==> str2num
Requires string or character array input.

Error in ==> lecture at 10
str2num(M(8,1))

Je ne comprends pas ce qui gêne MATLAB, pourquoi il ne considère pas l'entité comme un string, et comment corriger ce problème...