Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/295.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# Oracle数据库的自定义日期时间格式_C#_Oracle_Datetime - Fatal编程技术网

C# Oracle数据库的自定义日期时间格式

C# Oracle数据库的自定义日期时间格式,c#,oracle,datetime,C#,Oracle,Datetime,我目前正在从Oracle数据库中读取DateTime项,它们的格式为dd/mm/yyyy hh:mm:ss,但我需要将它们存储如下:yyy-mm-dd hh:mm:ss 我试过两种方法。我尝试过的第一种方法是将日期的字符串版本拆分为多个部分,然后重新组装,以获得我想要的输出。但是,将其转换为DateTime对象会将其还原为原始格式。代码如下: public static DateTime FormatDateTimeForPDB(string dateTimeString) { Date

我目前正在从Oracle数据库中读取
DateTime
项,它们的格式为
dd/mm/yyyy hh:mm:ss
,但我需要将它们存储如下:
yyy-mm-dd hh:mm:ss

我试过两种方法。我尝试过的第一种方法是将日期的字符串版本拆分为多个部分,然后重新组装,以获得我想要的输出。但是,将其转换为DateTime对象会将其还原为原始格式。代码如下:

public static DateTime FormatDateTimeForPDB(string dateTimeString)
{
    DateTime formattedDateTime;
    char[] illegals = { '/', ' ', ':' };

    string[] array = dateTimeString.Split(illegals);
    string date = array[2] + "-" + array[1] + "-" + array[0] + " " + array[3] + ":" + array[4] + ":" + array[5];

    formattedDateTime = Convert.ToDateTime(date);      
    return formattedDateTime;
}
Convert.ToDateTime(date)
上的断点将日期显示为2012-09-07 15:01:03,这是我想要的格式,但作为字符串,而不是日期时间


我还尝试使用DateTimeFormatInfo属性,正如用户tatis所讨论的那样,但所能做的只是交换月和日字段(给我
mm/dd/yyyy hh:mm:ss
)。任何帮助都将不胜感激。

如果您担心在C#中将日期字符串解析为DateTime,请查看DateTime的ParseExact方法。文件

大概是这样的:

CultureInfo provider = CultureInfo.InvariantCulture;
String format = "dd/MM/yyyy hh:mm:ss";
return DateTime.ParseExact(dateString, format, provider);

您混淆了SQL工具是如何向您显示存储的信息的,以及它是如何存储的。数据库中没有“格式”。如果该日期未存储为日期,则解雇创建DB架构的人。@SteveB我没有这种权限。Oded,虽然这是真的,但C#确实需要一种格式。它返回的格式无效。请使用格式字符串分析日期,不要尝试自己拆分/分析它。
DateTime
结构也不会以任何格式存储
DateTime
。当您看到时,将为您的计算机使用默认格式字符串。