将日期格式从Java移植到C ++

时间:2012-11-13 16:36:02

标签: java c++ porting

我在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',我找不到很多文档。

2 个答案:

答案 0 :(得分:1)

简单地插入T和Z(注意引号)并且被替换为格式化的一部分。因此,上面可以给你

2012-11-13T14:35Z

如果没有引用,Z通常会为您提供时区(例如+0000)。

答案 1 :(得分:0)

JavaDocs for SimpleDateFormat为您提供了格式选项列表。 Z通常代表时区,但请注意,ZT实际上都是'Z''T',它们只是字符串。