IF statement and time display
2 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
Dear All
I have a string which displays time and date taken from a txt file using:
str= datestr(datenum([yy mm dd HH MM SS]),0);
output yy =
96
96
96
97
98
99
00
01
I want it to be displayed as 1996 if it is before 2000 and 2000,2001,2002,..so on if after 2000.
Also the 'mm' format being displayed is like Jan,feb,.. can it be displayed as 01,02,03,..12? I couldn't find the proper formatting for it.
Current output example: str = 20-Dec-0003 22:47:39
Thanks
0 commentaires
Réponse acceptée
Andrei Bobrov
le 26 Sep 2012
Modifié(e) : Andrei Bobrov
le 26 Sep 2012
x= {'96318.74847837'
'96319.62211352'
'96319.62351606'
'96319.62356237'
'96320.05952563'
'96320.49676119'} % initial array
a = str2double(x);
y = fix(a/1000);
ymdhms = datevec(datenum(y,0,a - y*1000)); % corrected
[yearnow,~] = datevec(now);
ymdhms(:,1) = (ymdhms(:,1) <= rem(yearnow,2000))*100 + 1900 + ymdhms(:,1);
out = datestr(ymdhms,'yyyy-mm-dd HH:MM:SS');
5 commentaires
Andrei Bobrov
le 26 Sep 2012
Hi Hamza! Excuse me, I use year as function from the Financial Toolbox. Corrected.
Plus de réponses (0)
Voir également
Catégories
En savoir plus sur Cell Arrays dans Help Center et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!