time stamps (string to number)

3 views (last 30 days)
Tiina
Tiina on 15 Dec 2011
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 Comments
Jan
Jan on 15 Dec 2011
It would be helpful if you define the wanted output. What do you want for '09:35:00.000' ?
Tiina
Tiina on 16 Dec 2011
Hi Jan,
You are right I should have been more detailed by expressing a format like 'hhmmss' for example ..

Sign in to comment.

Accepted Answer

Andrei Bobrov
Andrei Bobrov on 15 Dec 2011
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)

More Answers (1)

Jan
Jan on 15 Dec 2011
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;

Categories

Find more on Data Type Conversion in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!