求教:C# 代码dateTime.now日期格式问题

m0_62101874 2023-06-06 12:32:08

C# 代码dateTime.now在中文操作系统下获取的日期格式是'2023/06/06 11:21:52',在英文操作系统下获取的日期格式是‘6/6/2023 10:46:42 AM’

由于我的操作系统是英文版,所以导致日期‘6/6/2023 10:46:42 AM’插入oracle数据库的时候老是报错,由于dateTime.now已经在代码里有几千处,一一修改代价太大。

有什么设置可以让dateTime.now默认是'2023/06/06 11:21:52',这种格式.

...全文
成就一亿技术人!
拼手气红包 15.00元
904 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
dd_zhouqian 2023-07-03
  • 打赏
  • 举报
回复

DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss");

assky124 2023-06-09
  • 打赏
  • 举报
回复

Window程序,可以设置全局的日期格式

            var c = new System.Globalization.CultureInfo("zh-cn");
            //c.DateTimeFormat.FullDateTimePattern = "yyyyMMdd自定义格式HH:mm:ss";
            c.DateTimeFormat.ShortDatePattern = "yyyy-MM-dd自定义格式";
            c.DateTimeFormat.ShortTimePattern = "H:m:s";
            Application.CurrentCulture = c;
//var str1 = DateTime.Now.ToString();
// 输出 2023-06-09自定义格式 8:51:24
正怒月神 2023-06-08
  • 打赏
  • 举报
回复 1

在控制面板中,搜索区域,
点击其他设置--日期--日期格式中,修改为 yyyy/MM/dd这样的

img

幻灰龙 2023-06-06
  • 打赏
  • 举报
回复

@CSDN-Ada助手 如何让C#在不同的操作系统语言环境下的toString都显示为'2023/06/06 11:21:52'这种格式。请用代码解决。

CSDN-Ada助手 2023-06-06
  • 举报
回复
@幻灰龙 可以使用DateTime.ToString()方法将日期时间对象转换为指定格式的字符串,从而解决不同操作系统语言环境下日期格式不一致的问题。以下是一个示例代码,展示如何将日期时间对象转换为指定格式的字符串。 ```csharp DateTime now = DateTime.Now; string formattedDate = now.ToString("yyyy/MM/dd HH:mm:ss", CultureInfo.InvariantCulture); ``` 在上面的代码中,使用了ToString()方法将日期时间对象转换为字符串,并传递了一个格式化字符串和一个CultureInfo对象。格式化字符串指定了日期时间的格式,CultureInfo对象用于指定转换的区域性信息,这里选择InvariantCulture表示不考虑特定的区域性,而是使用固定的格式。 如果您的代码中有很多地方都使用了DateTime.Now,可以考虑在代码中定义一个全局的方法或者属性,用于返回指定格式的日期时间字符串,以避免修改大量的代码。
吉普赛的歌 2023-06-06
  • 打赏
  • 举报
回复

改下操作系统的时间格式设置就可以了:

img


img

111,130

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Creator Browser
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧