On Wednesday, 13 December 2017 at 08:32:34 UTC, codephantom wrote:
On Wednesday, 13 December 2017 at 07:35:40 UTC, Jonathan M Davis wrote:
In general, you probably want to cast the SysTime to a DateTime if you're going to do something like that.

yes, I would agree ;-)

Of course the intention was not really to just format it the same way as Clock.currTime() does it, but rather to provide a way to more easily customise the format, however one likes, whenever one likes..

e.g.the following small change to the format string would make it return: 20171213_1924_41

(that's more like something I'd use)

  return
            format("%04s%02s%02s_%02s%02s_%02s",
                (d.year),
                to!(int)(d.month),
                (d.day),
                (d.hour),
                (d.minute),
                (d.second)
                );

Hi All,

Request your help on below program on how to format or cast SysTime to DateTime

import std.algorithm: filter, map, sort;
import std.container.array;
import std.file: SpanMode, dirEntries, isDir ;
import std.stdio: writeln,writefln;
import std.typecons: Tuple, tuple;
import std.datetime.systime: SysTime;
void main () {
auto FFs =  ["C:\\Temp\\BACKUP", "C:\\Temp\\\EXPORT"];
Array!(Tuple!(string, SysTime)) Sorted;
foreach(d; FFs[]) {
auto dFiles = Array!(Tuple!(string, SysTime))(dirEntries(d, SpanMode.shallow).filter!(a => a.isDir).map!(a => tuple(a.name, a.timeCreated)));
foreach(i; dFiles[]){ Sorted ~= i; }
writefln("%(%-(%-63s %s %)\n%)", Sorted[].sort!((a,b) => a[1] < b[1]));
}
}

Output:
C:\Temp\BACKUP\DND3 2017-Sep-05 14:31:00.7037169 C:\Temp\BACKUP\DND5 2017-Sep-05 14:31:00.750517 C:\Temp\EXPORT\DND6 2017-Sep-05 14:31:00.8909172 C:\Temp\BACKUP\dir1 2017-Sep-06 16:06:42.7223837 C:\Temp\EXPORT\dir2 2017-Sep-06 16:06:43.1435864 C:\Temp\BACKUP\dir2 2017-Sep-09 22:44:11.7604069 C:\Temp\BACKUP\dir3 2017-Dec-10 06:56:07.5122231 C:\Temp\BACKUP\t1 2017-Dec-11 04:10:02.6413853

Required Output
C:\Temp\BACKUP\DND3 2017-Sep-05 14:31:00 C:\Temp\BACKUP\DND5 2017-Sep-05 14:31:00 C:\Temp\EXPORT\DND6 2017-Sep-05 14:31:00 C:\Temp\BACKUP\dir1 2017-Sep-06 16:06:42 C:\Temp\EXPORT\dir2 2017-Sep-06 16:06:43 C:\Temp\BACKUP\dir2 2017-Sep-09 22:44:11 C:\Temp\BACKUP\dir3 2017-Dec-10 06:56:07 C:\Temp\BACKUP\t1 2017-Dec-11 04:10:02

From,
Vino.B

Reply via email to