1

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

4

2 回答 2

1

T 和 Z 只是被插入(注意引号),而不是作为格式的一部分被替换。因此,以上可以给你

2012-11-13T14:35Z

+0000如果没有引用Z 通常会给您一个时区(例如)。

于 2012-11-13T16:38:26.943 回答
0

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

于 2012-11-13T16:39:56.333 回答