我有以下代码的巨大问题:
DateTime date = DateTime.Now;
String yearmonthday = date.ToString("yyyy/MM/dd");
MessageBox.Show(yearmonthday);
Run Code Online (Sandbox Code Playgroud)
问题是,C#使用系统日期分隔符而不是总是使用我指定的"/".如果我运行该代码,我得到以下输出:
2011/03/18
Run Code Online (Sandbox Code Playgroud)
但如果我去"控制面板" - >"区域和语言选项"并将日期分隔符更改为" - ",我得到
2011-03-18
Run Code Online (Sandbox Code Playgroud)
即使在toString方法中我指定使用'/'.我错过了什么,或者这是C#/ .Net Framework错误?
试试这样:
String yearmonthday = date.ToString("yyyy/MM/dd", CultureInfo.InvariantCulture);
Run Code Online (Sandbox Code Playgroud)
或逃避 /
String yearmonthday = date.ToString(@"yyyy\/MM\/dd");
Run Code Online (Sandbox Code Playgroud)
在/您的格式字符串作为日期分隔符的占位符 -你所看到的现象是设计和明确记载.
如果你需要一个文字,/那么你需要在你的格式字符串中转义它,然后它应该看起来像"yyyy\/ MM\/ dd"或"yyyy'/'MM'/'dd".
| 归档时间: |
|
| 查看次数: |
359 次 |
| 最近记录: |