MATLAB Answers

How can I embed tab characters in datetime string formats?

8 views (last 30 days)
I have to create an output text file that will have lines of dates and times that are delimited by tab characters. I have no control over that format; it's a deliverable that has to be that way.
It looks like the .Format property of a datetime object cannot include escape characters, such as '\t'. Is there any easy way to get what I need, or must I assemble the output string piece-by-piece, using sprintf to insert the tab characters?
For reference, this is the format of a single line of the output, where the whitespace comes from tabs:
8 December 2015 14:10:50 8 December 2015 14:20:00

  0 Comments

Sign in to comment.

Accepted Answer

Stephen Cobeldick
Stephen Cobeldick on 28 Aug 2018
Edited: Stephen Cobeldick on 28 Aug 2018
Much more efficient than post-processing the dates is to just define the Format string using sprintf:
fmt = sprintf('d\tMMMM\tyyyy\tHH:mm:ss');
datetime(..., 'Format',fmt)

  1 Comment

Bruce Elliott
Bruce Elliott on 28 Aug 2018
Ah ha! - That's exactly what I wanted, but I hadn't tried embedding the tab characters themselves into the format string. Thank you!

Sign in to comment.

More Answers (1)

Bruce Elliott
Bruce Elliott on 27 Aug 2018
Here's my own answer:
myString = regexprep(char(myDateTime),' ','\t');
That seems to work and isn't too painful, if you don't mind regular expressions.

  0 Comments

Sign in to comment.


Translated by