将日期从 yyyy-mm-dd 转换为 dd-mm-yyyy

发布于 2024-10-25 20:22:56 字数 90 浏览 3 评论 0原文

MFC中是否有任何方法可以将格式(yyyy-mm-dd)的日期转换为(dd-mm-yyyy)。日期作为输入给出,用户以 yyyy-mm-dd 格式键入日期。提前致谢。

Is there any method in MFC to convert date in the format (yyyy-mm-dd) to (dd-mm-yyyy). The date is given as an input ,where the user type the date in yyyy-mm-dd format . Thanks in advance.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

赢得她心 2024-11-01 20:22:56

如果您知道输入字符串采用“yyyy-mm-dd”格式,那么您可以对表单进行简单的字符串重写:

out[0] = in[8];
out[1] = in[9];
out[2] = '-';
...

如果输入字符串的格式不那么好,那么您实际上会需要解析日期字符串,这是一个更难的问题。

标准方法是使用 strptime(),如以下所述:

将字符串转换为 C 中的日期

其中格式字符串类似于“%Y-%m-%d”。

获得日期后,您可以使用以下命令打印它:

printf("%.4d-%.2d-%.2d", tm->tm_year, tm->tm_mon, tm->tm_mday);

If you know the input string is in "yyyy-mm-dd" format, then you can do a simple string rewrite of the form:

out[0] = in[8];
out[1] = in[9];
out[2] = '-';
...

If the input string is not formatted that nicely, then you will actually need to parse the date string, which is a harder problem.

The standard way to do that is using strptime(), as discussed in:

Convert a string to a date in C

where the format string would look like "%Y-%m-%d".

Once you have the date, you could print it using something like:

printf("%.4d-%.2d-%.2d", tm->tm_year, tm->tm_mon, tm->tm_mday);
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文