我在Java中有以下代码。我被要求将它移植到C ++,但是,我不是Java开发人员。什么是C ++中的等价物:
public String formatDate( String string, Date time, TimeZone timeZone )
{
Calendar calendar = Calendar.getInstance( timeZone );
calendar.setTime( time );
StringBuffer answer = new StringBuffer();
SimpleDateFormat format = new SimpleDateFormat( string );
format.format( calendar, answer, null );
return answer.toString();
}
以下一行是如何调用它:
formatDate( "yyyy-MM-dd'T'HH:mm'Z'", new Date(), TimeZone.getTimeZone( "GMT" ));
格式字符串有'T'和'Z',我找不到很多文档。
答案 0 :(得分:1)
简单地插入T和Z(注意引号)并且不被替换为格式化的一部分。因此,上面可以给你
2012-11-13T14:35Z
如果没有引用,Z通常会为您提供时区(例如+0000
)。
答案 1 :(得分:0)
JavaDocs for SimpleDateFormat为您提供了格式选项列表。 Z
通常代表时区,但请注意,Z
和T
实际上都是'Z'
和'T'
,它们只是字符串。