将整数转换为字符串时省略零 MQL5
zero is omitted while converting integer to string MQL5
看下面我试过的代码:
MqlDateTime time;
TimeToStruct(TimeCurrent(),time);
string currenttime=IntegerToString(time.year)+"-0"+
IntegerToString(time.mon)+"-"+
IntegerToString(time.day)+ " "+
IntegerToString(time.hour)+ ":"+
IntegerToString(time.min)+ ":00";
以下输出是:2018-7-25 15:8:00
我期望输出为 2018-07-25 15:08:00
,即月份和分钟的 2 个值。但它没有转换零。我给出的日期时间格式为 2018-07-25 15:08:00
,这是我希望在转换为字符串后得到的。但是得到了别的东西。
请帮助我。
为什么你认为分钟之前应该有零?根据你的代码,似乎分钟不是没有前导零。
无论如何,如果您不喜欢 TimeToString
,请尝试 StringFormat
。
string output=StringFormat("%04d-%02d-%02d %02d:%02d:00",
time.year,time.mon,time.day,time.hour,time.min);
看下面我试过的代码:
MqlDateTime time;
TimeToStruct(TimeCurrent(),time);
string currenttime=IntegerToString(time.year)+"-0"+
IntegerToString(time.mon)+"-"+
IntegerToString(time.day)+ " "+
IntegerToString(time.hour)+ ":"+
IntegerToString(time.min)+ ":00";
以下输出是:2018-7-25 15:8:00
我期望输出为 2018-07-25 15:08:00
,即月份和分钟的 2 个值。但它没有转换零。我给出的日期时间格式为 2018-07-25 15:08:00
,这是我希望在转换为字符串后得到的。但是得到了别的东西。
请帮助我。
为什么你认为分钟之前应该有零?根据你的代码,似乎分钟不是没有前导零。
无论如何,如果您不喜欢 TimeToString
,请尝试 StringFormat
。
string output=StringFormat("%04d-%02d-%02d %02d:%02d:00",
time.year,time.mon,time.day,time.hour,time.min);