Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/330.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何将SQL日期转换为可读格式_C#_Datetime - Fatal编程技术网

C# 如何将SQL日期转换为可读格式

C# 如何将SQL日期转换为可读格式,c#,datetime,C#,Datetime,我尝试了各种方法来解决我的问题,但似乎没有一种方法对我有效。我在#工作,有一个数据类型为date的变量,值为{07/03/2013 17:27:02},现在我希望这个日期显示为03-July-2013,但它似乎显示为07-March-2013 代码位 DateTime publishDate=“07/03/2013 17:27:02” string publish=publishDate.ToString(“dd-MMM-yyyy”) 也尝试过:String.Format({0:mmmd,yyy

我尝试了各种方法来解决我的问题,但似乎没有一种方法对我有效。我在#工作,有一个数据类型为date的变量,值为
{07/03/2013 17:27:02}
,现在我希望这个日期显示为
03-July-2013
,但它似乎显示为
07-March-2013

代码位

DateTime publishDate=“07/03/2013 17:27:02”

string publish=publishDate.ToString(“dd-MMM-yyyy”)

也尝试过:String.Format({0:mmmd,yyyyy}),publishDate)

这就是我正在尝试的,我想这将是一个非常简单的转换,但我被打动了。有人能给我指出正确的方向吗?

用“MMMM”来显示月份的全名

Console.Write(DateTime.Now.ToString("dd-MMMM-yyyy"));
// Result: 04-july-2013
使用“MMMM”显示月份的全名

Console.Write(DateTime.Now.ToString("dd-MMMM-yyyy"));
// Result: 04-july-2013

下面是一个在C中将日期时间格式化为字符串的参考#

您需要String.Format(“{0:dd-MMMM-yyyy}”,publishDate)的外观


如果你的约会日期是3月而不是7月,那么你的区域格式似乎不正确。。这可能是个问题。

这里有一个在C中将日期时间格式化为字符串的参考#

您需要String.Format(“{0:dd-MMMM-yyyy}”,publishDate)的外观


如果你的约会日期是3月而不是7月,那么你的区域格式似乎不正确。。这可能是个问题。

因为您的日期是按月份值和日期值反转输出的,所以我会考虑使用:

DateTime.ToString("dd-MMMM-yyyy, CultureInfo.InvariantCulture);

不变的文化不会考虑你的系统文化设置。

< P>因为你的日期被输出的月份和日期值倒置,我会考虑使用:

DateTime.ToString("dd-MMMM-yyyy, CultureInfo.InvariantCulture);
InvariantCulture不会考虑您的系统区域性设置。

请尝试以下方法:

DateTime publishDate = DateTime.ParseEaxct("07/03/2013 17:27:02", 
                           "MM/dd/yyyy HH:mm:ss", CultureInfo.InvariantCulture);

string publish = publishDate.ToString("dd-MMMM-yyyy");
希望这能解决您的问题。

尝试以下方法:

DateTime publishDate = DateTime.ParseEaxct("07/03/2013 17:27:02", 
                           "MM/dd/yyyy HH:mm:ss", CultureInfo.InvariantCulture);

string publish = publishDate.ToString("dd-MMMM-yyyy");

希望这能解决您的问题。

您可以告诉数据库为每个日期或时间戳生成正确的格式。这避免了客户端的任何转换错误

以下是Oracle的一些示例:

ALTER SESSION SET NLS_DATE_FORMAT = 'YYYY-MM-DD';
ALTER SESSION SET NLS_TIME_FORMAT = 'HH24:MI:SS';
ALTER SESSION SET NLS_TIME_TZ_FORMAT = 'HH24:MI:SS TZH:TZM';
ALTER SESSION SET NLS_TIMESTAMP_FORMAT = 'YYYY-MM-DD HH24:MI:SS';
ALTER SESSION SET NLS_TIMESTAMP_TZ_FORMAT = 'YYYY-MM-DD HH24:MI:SS TZH:TZM';

您可以告诉数据库为每个日期或时间戳生成正确的格式。这避免了客户端的任何转换错误

以下是Oracle的一些示例:

ALTER SESSION SET NLS_DATE_FORMAT = 'YYYY-MM-DD';
ALTER SESSION SET NLS_TIME_FORMAT = 'HH24:MI:SS';
ALTER SESSION SET NLS_TIME_TZ_FORMAT = 'HH24:MI:SS TZH:TZM';
ALTER SESSION SET NLS_TIMESTAMP_FORMAT = 'YYYY-MM-DD HH24:MI:SS';
ALTER SESSION SET NLS_TIMESTAMP_TZ_FORMAT = 'YYYY-MM-DD HH24:MI:SS TZH:TZM';

请尝试字符串格式(“{0:dd-MMMM-yyyy}”,publishDate)
DateTime publishDate=“07/03/2013 17:27:02”
将不会编译。您不能只将
字符串
分配给
日期时间
。这与您在标题中输入的SQL有什么关系?Matt,为了简单起见,我在DateTime变量中给出了什么。试试string.Format(“{0:dd MMMM yyyy}”,publishDate)
DateTime publishDate=“07/03/2013 17:27:02”
不会编译。您不能只将
字符串
分配给
日期时间
。这与您在标题中输入的SQL有什么关系?Matt,为了简单起见,我在DateTime变量中给出了什么。问题是,出于某种原因,日期被保存为2013 dd mm格式,而不是数据库中的2013 mm dd格式。问题是,出于某种原因,数据库中的日期保存为2013年dd-mm格式,而不是2013年mm-dd格式。