time stamps (string to number)

Hi guys,
How could I convert time stamps to a num or double, this is the format I have:
'09:35:00.000' '09:36:00.000' '09:37:00.000' '09:38:00.000' '09:39:00.000' '09:40:00.000' '09:41:00.000' '09:42:00.000'
I tried str2num str2double with various arguments... but got no where , I am assuming that the format of the time stamps is not read by those functions maybe, is there any function that am missing? Your help is appreciated.

2 commentaires

Jan
Jan le 15 Déc 2011
It would be helpful if you define the wanted output. What do you want for '09:35:00.000' ?
Tiina
Tiina le 16 Déc 2011
Hi Jan,
You are right I should have been more detailed by expressing a format like 'hhmmss' for example ..

Connectez-vous pour commenter.

 Réponse acceptée

Andrei Bobrov
Andrei Bobrov le 15 Déc 2011

0 votes

A = {'09:35:00.000' '09:36:00.000' '09:37:00.000' '09:38:00.000' '09:39:00.000' '09:40:00.000' '09:41:00.000' '09:42:00.000'};
out = datevec(A)
out = out(:,4:end)

Plus de réponses (1)

Jan
Jan le 15 Déc 2011

0 votes

A = {'09:35:00.000' '09:36:00.000' '09:37:00.000' '09:38:00.000' '09:39:00.000' '09:40:00.000' '09:41:00.000' '09:42:00.000'};
B = sprintf('%s:', A{:});
C = reshape(sscanf(B, '%g:'), 3, []);
Then you have:
C = [ 9 9 9 9 9 9 9 9
35 36 37 38 39 40 41 42
0 0 0 0 0 0 0 0];
If you want to convert it to seconds:
D = [3600, 60, 1] * C;

Catégories

En savoir plus sur Characters and Strings dans Centre d'aide et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by