3

我将日期分配给javascript中的变量。

var myDate = new Date(y, m, 1)

所以我把日期myDate写成:Fri Mar 01 2013 00:00:00 GMT+0530 (India Standard Time)

我需要以相同的方式在 C 语言中格式化日期字符串。

我试过这样的事情:

string.Format("{0:yyyy-MM-dd hh:mm:ss} GMT {1}", dt.ToLocalTime(), dt.ToLocalTime().ToString("%K"))

它给了我:"2013-03-12 01:31:49 GMT +05:30"

所以这不是我想要的确切格式。任何帮助...

4

7 回答 7

2

这应该工作

System.DateTime.Now.ToString("ddd MMM dd yyyy HH:mm:ss \"GMT\"K")

返回“2013 年 3 月 12 日星期二 14:01:38 GMT+05:30”

于 2013-03-12T08:32:54.123 回答
1

可能有一种更合适的方法,但在这种情况下,格式字符串的初始部分刚刚关闭:

ddd MMM dd yyyy

string.Format("{0:ddd MMM dd yyyy hh:mm:ss} GMT {1}", dt.ToLocalTime(), dt.ToLocalTime().ToString("%K"))
于 2013-03-12T08:18:59.623 回答
1
string.Format("{0:ddd MMM dd yyyy hh:mm:ss} GMT {1}", dt.ToLocalTime(), dt.ToLocalTime().ToString("%K"))
于 2013-03-12T08:20:03.587 回答
1

您想要的是以下内容,它将为您提供与 JavaScript 完全相同的内容!

string.Format("{0:ddd MMM dd yyyy hh:mm:ss \"GMT\"K} ({1})", dt.ToLocalTime(), TimeZoneInfo.Local.StandardName)

于 2013-03-12T08:23:04.690 回答
1

你的格式字符串是错误的。应该是这样的:

"{0:ddd MMM dd yyyy hh:mm:ss} GMT{1}"
于 2013-03-12T08:23:17.910 回答
1

为什么不直接使用

dt.ToString("ddd MMM dd yyyy HH':'mm':'ss 'GMT'K");

应该给你

Fri Mar 01 2013 00:00:00 GMT+0530
于 2013-03-12T08:29:04.203 回答
0

试试这个代码>>

DateTime dt = DateTime.Now;

String.Format("{0:dd-MM-yyyy}", dt);
于 2013-03-12T08:19:15.177 回答