ls lệnh in thời gian ở định dạng này:Làm cách nào để in time_t theo một định dạng cụ thể?
Aug 23 06:07
Làm thế nào tôi có thể chuyển đổi thời gian nhận được từ stat()
's mtime()
sang định dạng này cho thời gian địa phương?
ls lệnh in thời gian ở định dạng này:Làm cách nào để in time_t theo một định dạng cụ thể?
Aug 23 06:07
Làm thế nào tôi có thể chuyển đổi thời gian nhận được từ stat()
's mtime()
sang định dạng này cho thời gian địa phương?
Sử dụng strftime (bạn cần phải chuyển đổi time_t
-struct tm*
đầu tiên):
char buff[20];
struct tm * timeinfo;
timeinfo = localtime (&mtime);
strftime(buff, sizeof(buff), "%b %d %H:%M", timeinfo);
Định dạng:
%b - The abbreviated month name according to the current locale.
%d - The day of the month as a decimal number (range 01 to 31).
%H - The hour as a decimal number using a 24-hour clock (range 00 to 23).
%M - The minute as a decimal number (range 00 to 59).
Đây là mã đầy đủ:
struct stat info;
char buff[20];
struct tm * timeinfo;
stat(workingFile, &info);
timeinfo = localtime (&(info.st_mtime));
strftime(buff, 20, "%b %d %H:%M", timeinfo);
printf("%s",buff);
tương tự cho 'clock_t' : http://stackoverflow.com/questions/1083142/what-s-the-correct-way-to-use-printf-to-prin t-a-clock-t –