DateTime和string之间的相互转换经常碰到,可就这么简单的一个转换其中也有些需要注意的地方.

 1         static void Main(string[] args)
 2         {
 3             string format = @"yyyy/MM/dd HH:mm:ss";
 4             DateTimeFormatInfo dtfi = DateTimeFormatInfo.InvariantInfo;
 5
 6             DateTime dateTime = new DateTime(2014, 11, 2, 17, 30, 00);
 7
 8             string dateTimeStr1 = dateTime.ToString(format);
 9             string dateTimeStr2 = dateTime.ToString(format, dtfi);
10
11             Console.WriteLine(Thread.CurrentThread.CurrentCulture.DisplayName);
12             Console.WriteLine(dateTimeStr1);
13             Console.WriteLine(dateTimeStr2);
14
15             DateTime dateTimeResult;
16             Console.WriteLine(DateTime.TryParseExact(dateTimeStr1, format, null, DateTimeStyles.None, out dateTimeResult));
17             Console.WriteLine(DateTime.TryParseExact(dateTimeStr2, format, dtfi, DateTimeStyles.None, out dateTimeResult));
18
19             Console.ReadLine();
20         }

View Code

dateTime.ToString(format)如果不传第二个参数,那么将会使用当前线程的区域设置,使格式化的结果依赖于本机的区域设置.

DateTime.TryParseExact(dateTimeStr1, format, null, DateTimeStyles.None, out dateTimeResult),第三个参数如果为null,也会使用当前线程的区域设置.

由于不能保证所有机器的区域设置都一样,上面两句代码可能会得不到预期的结果.

可以使用特定的区域设置来解决这个问题,或者直接将转换设置为和区域设置无关,完全由代码控制.

DateTimeFormatInfo dtfi = DateTimeFormatInfo.InvariantInfo;

string dateTimeStr2 = dateTime.ToString(format, dtfi);

DateTime.TryParseExact(dateTimeStr2, format, dtfi, DateTimeStyles.None, out dateTimeResult);

转载于:https://www.cnblogs.com/xiaobaihome/p/4069636.html

DateTime和字符串转换问题相关推荐

  1. sql datetime转字符串_datetime的用法,时间戳转换

    点击"蓝字"关注,一起进阶共同成长 datetime用做日期和时间的管理和转换. 获取当前时间 import timefrom datetime import datetime, ...

  2. 关于DateTime和String转换的容易犯得错误

    在开发中,常常会有DataTime类型和String类型的互相转换的要求,比较常用的写法是 var date = Convert.ToDateTime("2012/06/08 09:10:1 ...

  3. oracle将字符串的日期格式化,oracle格式化字符串 oracle 怎么把字符串转换成日期...

    Oracle数据库中如何将字符串格式化为日期 可以用 to_date('日期类型字符串','要转化的日期类型')函数进行日期格式转换 sql:select to_date('1990-12-12 12 ...

  4. MySQL日期字符串转换成NULL值的异常处理

    1,YYYYmmdd格式日期转换为null 看如下记录,一个能取到值,一个取不到值** mysql> SELECT DATE_FORMAT(STR_TO_DATE('20150922 13:01 ...

  5. Flutter 时间戳转换成时间 时间字符串转换成时间戳

    时间戳转换成时间 DateTime createTime = DateTime.fromMillisecondsSinceEpoch(int.parse(time)); 有时候你会发现时间不对..那可 ...

  6. 【0513】 将字符串转换成时间格式

    1.1.将字符串转换成时间格式(to_date) 语法:to_date(需要转换的字符串,字符串对应的格式) 字符串类型: char:固定长度,0-255个字符,默认值1: varchar:可变长度, ...

  7. SQL SERVER 日期格式化、日期和字符串转换

    SQL SERVER 日期格式化.日期和字符串转换 sql server 中怎么把字符串转化为日期? 1. convert(datetime,'YYYY-MM-DD HH24:MI:SS') 2. c ...

  8. python字符串转换字节_python 字节与字符串转换

    1.如果没有设置字符串编码格式,那么将采用系统默认编码格式 name = 'laogaoyang' # 采用系统默认编码格式 nameBytes = name.encode('utf-8') # 先将 ...

  9. DateTime 格式字符串

    标准 DateTime 格式字符串 详见:http://msdn.microsoft.com/zh-cn/library/az4se3k1(VS.80).aspx 格式说明符 名称 说明 d 短日期模 ...

最新文章

  1. 03Django基本应用结构
  2. 详细讲解MapReduce二次排序过程
  3. 第01课:深度学习概述
  4. Parameter '**' not found. Available parameters are [0, 1, param1, param2]解决办法
  5. apache31分是重症吗,APACHEⅢ重症评估系统
  6. 易被忽视的贝叶斯概率
  7. 为企业选择最合适的SSL证书
  8. 第9批候选!高工智能汽车金球奖入围年度产品/方案公示
  9. WDK安装调试以及注意事项
  10. 算24点的一般方法及例题
  11. 图像复原模型及PSF与OTF
  12. Anaconda 虚拟环境:pyuic之找不到模块之最后的希望(最新)
  13. 【云扩RPA】CreateFirstAutomationProject
  14. C语言基础教学——认识C语言(第一课)
  15. 【算法笔记】极客时间 算法面试通关40讲 笔记  覃超
  16. LNMP架构搭建(源码编译)
  17. 【剑指offter】重建二叉树
  18. mysql 767 bytes_max key length is 767 bytes
  19. jquary发送ajax请求的三种方式
  20. vscode 快捷键高效写代码

热门文章

  1. csvn(apache+svn)管理工具搭建
  2. Go编程技巧--io.Reader/Writer
  3. PIX525故障一例,求解
  4. 使用模板引擎artTemplate的几个问题总结
  5. C Primer Plus 第7章 C控制语句:分支和跳转 7.4 一个统计字数的程序
  6. BZOJ2683 简单题(CDQ分治)
  7. Python基础笔记,后续更新
  8. C++ 重载(overload)、重写(overrride)、重定义(redefine)总结
  9. Backtrader多周期回测
  10. 多线程数据下载(akshare)