On 04/25/2017 10:41 AM, Suliman wrote:
I am using mysql native. Date in DB have next format: 2016-11-01 06:19:37
But every tile when I am trying to get it I am getting such format:
2016-Oct-31 15:37:24
I use next code:
writeln(point[1].coerce!string);
Why coerce is forcing format changing? How I can extract result as
without month name between digits or easily convert it in proper data
format?
Here's a silly little code that gets the job done. :)
import std.stdio;
string[string] numeralMonth;
static this() {
numeralMonth = [ "Jan" : "01", "Feb" : "02", "Mar" : "03", "Apr" :
"04",
"May" : "05", "Jun" : "06", "Jul" : "07", "Aug" :
"08",
"Sep" : "09", "Oct" : "10", "Nov" : "11", "Dec" :
"12" ];
}
auto goodDateFormat(string str) {
import std.range : chain, choose;
if (str.length >= 8) {
auto key = str[5..8];
auto numeral = key in numeralMonth;
if (numeral) {
import std.string : format;
return format("%s%s%s", str[0..5], *numeral, str[8..$]);
}
}
return str;
}
void main() {
writeln(goodDateFormat("2016-Oct-31 15:37:24"));
}
Ali