gpt4 book ai didi

c++ - 如何检查日期格式的有效性(例如,%d/%m/%Y-%H :%M:%S)?

转载 作者:搜寻专家 更新时间:2023-10-31 01:56:38 24 4
gpt4 key购买 nike

我正在使用 boost optionsparser 来解析用户传递的命令行参数。现在程序有一个选项供用户指定他/她选择的日期格式。

喜欢,

program -d %d/%m/%Y-%H:%M:%S , program -d %d/%m/%Y 和等等。

我面临的问题是,*如何检查用户传递的格式字符串的有效性? *

我现在能想到的唯一方法是将格式字符串传递给日期类并在那里使用异常处理。

但是,如果在解析选项时有另一种方法来检查有效性,那么我就不需要传递数据并不必要地做一些事情,因为我在实际使用格式生成日期之前做了一些计算字符串。

最佳答案

I wouldn't need to pass around the data and do stuff unncessarily since I do some calculation before actually using the format to generate the date string.

与其绕圈子计算一些东西传递给日期类来验证格式字符串,不如让日期类为您格式化今天的日期,看看它是否会产生异常?

如果您尝试自己解析它,您只是在编写复制日期类所做的代码,但也有可能遗漏一些细节。您可能会通过不允许某些应该允许的内容来惹恼您的用户(我已经遇到过这种情况,应用程序告诉我我的完全有效的电子邮件不是),并且无论如何您都必须处理日期类中的异常,以防万一解析格式时不要覆盖它覆盖的所有基础

关于c++ - 如何检查日期格式的有效性(例如,%d/%m/%Y-%H :%M:%S)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6804607/

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