如何在Ada中打印Ada.Calendar.Time变量?

时间:2009-03-12 17:27:51

标签: ada

需要知道如何在Ada中打印Time变量。我假设没有可移植的方式,因为Time是实现定义的。我已经看过GNAT下可用的GNAT.Calendar.Formatting包,我也对VME的GHS感兴趣。

4 个答案:

答案 0 :(得分:2)

请参阅Ada2005的“Ada.Calendar.Formatting”功能“Image”。如果您有Ada95编译器,并且此软件包不可用,请尝试here

中的实现

这是使用GNAT 3.15p编写的,所以很旧。

答案 1 :(得分:1)

当然,时间输出可以是可移植的,Ada.Calendar包含提取时间值组件的标准函数,因此可以直接将自己的转换包放在一起。

例如,这里是one。只需要创建一个次要的添加项来为给定的Time值创建一个“Formatted_Time”记录(请参阅包的Get_Time()函数以获得指导),或者在包规范中看到Main_Formatter()。

答案 2 :(得分:1)

一般来说,我使用的是Calendar.Split,然后对我关心的部分进行图像处理。

答案 3 :(得分:0)

这是一个使用GNAT.Calendar.Time_IO包显示日期和时间的示例:

with ada.calendar;
with gnat.calendar.time_io;

procedure display_time is
begin
  gnat.calendar.time_io.put_time(ada.calendar.clock, "Date: %Y/%m/%d Time: %H:%M:%S");
end display_time;

此处提供日期/时间格式选项: https://en.wikibooks.org/wiki/Ada_Programming/Libraries/GNAT.Calendar.Time_IO