gpt4 book ai didi

c++ - 将字符串转换为 TDateTime 变量

转载 作者:太空宇宙 更新时间:2023-11-04 14:14:28 37 4
gpt4 key购买 nike

我正在使用 C++ 开发预约系统。

能否请我帮忙将字符串转换为 TDateTime 变量。

这是一个我希望得到帮助的示例;

TDateTime appDateTime(2012, 9, 15, 14, 0, 0, 0);

我将其保存到一个文件中(包含其他字符串和 bool 值)。当作为字符串加载时,字符串值为:

15/09/2012 2:00:00 pm

如何将其转换为 TDateTime 变量?

谢谢

更新

我正在尝试通过使用字符串的构造函数创建 TDateTime 变量。这是我的代码:

    string stringTestConstructorDate = "12/05/1990";

TDateTime testConstruct(stringTestConstructorDate);

我收到此错误:E2285 无法找到“TDateTime::TDateTime(string)”的匹配项

如何使用字符串变量构造 TDateTime 变量?

这是我的第二个选项的代码:

string stringDateToConvert = "17/09/2012 09:00:02 a.m.";

struct tm DateTime;

if (NULL == strptime("17/09/2012 09:00:02 a.m.", "%D %T", &DateTime)) {

printf("strptime() failed.\n");

exit(EXIT_FAILURE);

}

printf("tm_sec = %3d\n", DateTime.tm_sec );

printf("tm_min = %3d\n", DateTime.tm_min );

printf("tm_hour = %3d\n", DateTime.tm_hour);

printf("tm_mday = %3d\n", DateTime.tm_mday);

printf("tm_mon = %3d\n", DateTime.tm_mon );

printf("tm_year = %3d\n", DateTime.tm_year);

这很好用。但是,能否请我提供一些帮助,使“stringDateToConvert”能够传递给“strptime”函数。目前我收到以下错误:

E2034 Cannot convert 'string' to 'const char *'

谢谢

最佳答案

SysUtils 中有一个StrToDateTime函数。

http://docs.embarcadero.com/products/rad_studio/delphiAndcpp2009/HelpUpdate2/EN/html/delphivclwin32/SysUtils_StrToDateTime@string.html

还有一个 StrToDateTimeDef 函数,它在解析失败的情况下采用默认值。

http://docwiki.embarcadero.com/Libraries/XE4/de/System.SysUtils.StrToDateTimeDef

它们都有接受 TFormatSettings 对象的重载,该对象可用于提供元数据以解析具有特定语言环境格式的日期。

关于c++ - 将字符串转换为 TDateTime 变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12446360/

37 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com