C# 如何将英语字符串日期转换为葡萄牙语字符串日期

C# 如何将英语字符串日期转换为葡萄牙语字符串日期,c#,C#,如何在C#Net中将英语字符串日期转换为葡萄牙语字符串日期 我有一个字符串:2014-06-15,我需要转换成15-06-2014(dd-MM-yyyy格式) 或 Format可以为您提供日期解析所需的几乎所有内容 摘自。示例: // create date time 2008-03-09 16:05:07.123 DateTime dt = new DateTime(2008, 3, 9, 16, 5, 7, 123); String.Format("{0:y yy yyy yyyy}",

如何在C#Net中将英语字符串日期转换为葡萄牙语字符串日期

我有一个字符串:
2014-06-15
,我需要转换成
15-06-2014
(dd-MM-yyyy格式)

Format可以为您提供日期解析所需的几乎所有内容

摘自。示例:

// create date time 2008-03-09 16:05:07.123
DateTime dt = new DateTime(2008, 3, 9, 16, 5, 7, 123);

String.Format("{0:y yy yyy yyyy}", dt);  // "8 08 008 2008"   year
String.Format("{0:M MM MMM MMMM}", dt);  // "3 03 Mar March"  month
String.Format("{0:d dd ddd dddd}", dt);  // "9 09 Sun Sunday" day
String.Format("{0:h hh H HH}",     dt);  // "4 04 16 16"      hour 12/24
String.Format("{0:m mm}",          dt);  // "5 05"            minute
String.Format("{0:s ss}",          dt);  // "7 07"            second
String.Format("{0:f ff fff ffff}", dt);  // "1 12 123 1230"   sec.fraction
String.Format("{0:F FF FFF FFFF}", dt);  // "1 12 123 123"    without zeroes
String.Format("{0:t tt}",          dt);  // "P PM"            A.M. or P.M.
String.Format("{0:z zz zzz}",      dt);  // "-6 -06 -06:00"   time zone


Specifier   DateTimeFormatInfo property       Pattern value (for en-US culture)
t           ShortTimePattern                  h:mm tt
d           ShortDatePattern                  M/d/yyyy
T           LongTimePattern                   h:mm:ss tt
D           LongDatePattern                   dddd, MMMM dd, yyyy
f           (combination of D and t)          dddd, MMMM dd, yyyy h:mm tt
F           FullDateTimePattern               dddd, MMMM dd, yyyy h:mm:ss tt
g           (combination of d and t)          M/d/yyyy h:mm tt
G           (combination of d and T)          M/d/yyyy h:mm:ss tt
m, M        MonthDayPattern                   MMMM dd
y, Y        YearMonthPattern                  MMMM, yyyy
r, R        RFC1123Pattern                    ddd, dd MMM yyyy HH':'mm':'ss 'GMT' (*)
s           SortableDateTi­mePattern           yyyy'-'MM'-'dd'T'HH':'mm':'ss (*)
u           UniversalSorta­bleDateTimePat­tern  yyyy'-'MM'-'dd HH':'mm':'ss'Z' (*)
                                              (*) = culture independent



String.Format("{0:t}", dt);  // "4:05 PM"                         ShortTime
String.Format("{0:d}", dt);  // "3/9/2008"                        ShortDate
String.Format("{0:T}", dt);  // "4:05:07 PM"                      LongTime
String.Format("{0:D}", dt);  // "Sunday, March 09, 2008"          LongDate
String.Format("{0:f}", dt);  // "Sunday, March 09, 2008 4:05 PM"  LongDate+ShortTime
String.Format("{0:F}", dt);  // "Sunday, March 09, 2008 4:05:07 PM" FullDateTime
String.Format("{0:g}", dt);  // "3/9/2008 4:05 PM"                ShortDate+ShortTime
String.Format("{0:G}", dt);  // "3/9/2008 4:05:07 PM"             ShortDate+LongTime
String.Format("{0:m}", dt);  // "March 09"                        MonthDay
String.Format("{0:y}", dt);  // "March, 2008"                     YearMonth
String.Format("{0:r}", dt);  // "Sun, 09 Mar 2008 16:05:07 GMT"   RFC1123
String.Format("{0:s}", dt);  // "2008-03-09T16:05:07"             SortableDateTime
String.Format("{0:u}", dt);  // "2008-03-09 16:05:07Z"            UniversalSortableDateTime

Format可以为您提供日期解析所需的几乎所有内容

摘自。示例:

// create date time 2008-03-09 16:05:07.123
DateTime dt = new DateTime(2008, 3, 9, 16, 5, 7, 123);

String.Format("{0:y yy yyy yyyy}", dt);  // "8 08 008 2008"   year
String.Format("{0:M MM MMM MMMM}", dt);  // "3 03 Mar March"  month
String.Format("{0:d dd ddd dddd}", dt);  // "9 09 Sun Sunday" day
String.Format("{0:h hh H HH}",     dt);  // "4 04 16 16"      hour 12/24
String.Format("{0:m mm}",          dt);  // "5 05"            minute
String.Format("{0:s ss}",          dt);  // "7 07"            second
String.Format("{0:f ff fff ffff}", dt);  // "1 12 123 1230"   sec.fraction
String.Format("{0:F FF FFF FFFF}", dt);  // "1 12 123 123"    without zeroes
String.Format("{0:t tt}",          dt);  // "P PM"            A.M. or P.M.
String.Format("{0:z zz zzz}",      dt);  // "-6 -06 -06:00"   time zone


Specifier   DateTimeFormatInfo property       Pattern value (for en-US culture)
t           ShortTimePattern                  h:mm tt
d           ShortDatePattern                  M/d/yyyy
T           LongTimePattern                   h:mm:ss tt
D           LongDatePattern                   dddd, MMMM dd, yyyy
f           (combination of D and t)          dddd, MMMM dd, yyyy h:mm tt
F           FullDateTimePattern               dddd, MMMM dd, yyyy h:mm:ss tt
g           (combination of d and t)          M/d/yyyy h:mm tt
G           (combination of d and T)          M/d/yyyy h:mm:ss tt
m, M        MonthDayPattern                   MMMM dd
y, Y        YearMonthPattern                  MMMM, yyyy
r, R        RFC1123Pattern                    ddd, dd MMM yyyy HH':'mm':'ss 'GMT' (*)
s           SortableDateTi­mePattern           yyyy'-'MM'-'dd'T'HH':'mm':'ss (*)
u           UniversalSorta­bleDateTimePat­tern  yyyy'-'MM'-'dd HH':'mm':'ss'Z' (*)
                                              (*) = culture independent



String.Format("{0:t}", dt);  // "4:05 PM"                         ShortTime
String.Format("{0:d}", dt);  // "3/9/2008"                        ShortDate
String.Format("{0:T}", dt);  // "4:05:07 PM"                      LongTime
String.Format("{0:D}", dt);  // "Sunday, March 09, 2008"          LongDate
String.Format("{0:f}", dt);  // "Sunday, March 09, 2008 4:05 PM"  LongDate+ShortTime
String.Format("{0:F}", dt);  // "Sunday, March 09, 2008 4:05:07 PM" FullDateTime
String.Format("{0:g}", dt);  // "3/9/2008 4:05 PM"                ShortDate+ShortTime
String.Format("{0:G}", dt);  // "3/9/2008 4:05:07 PM"             ShortDate+LongTime
String.Format("{0:m}", dt);  // "March 09"                        MonthDay
String.Format("{0:y}", dt);  // "March, 2008"                     YearMonth
String.Format("{0:r}", dt);  // "Sun, 09 Mar 2008 16:05:07 GMT"   RFC1123
String.Format("{0:s}", dt);  // "2008-03-09T16:05:07"             SortableDateTime
String.Format("{0:u}", dt);  // "2008-03-09 16:05:07Z"            UniversalSortableDateTime

您可以使用
DateTime
Parse
ToString()
方法:

var date = DateTime.Parse("2014-06-15");
var result = date.ToString("dd-MM-yyyy");
Console.WriteLine(result);

您可以使用
DateTime
Parse
ToString()
方法:

var date = DateTime.Parse("2014-06-15");
var result = date.ToString("dd-MM-yyyy");
Console.WriteLine(result);
这将使用指定区域性中的设置


这将使用指定区域性中的设置。

您可以使用内置的:

或者,您可以将类与重载一起使用,强制字符串使用该区域性的系统指定格式:

var testDate = DateTime.Parse("2014-06-15");
var usa = new System.Globalization.CultureInfo("en-US");
var portugal = new System.Globalization.CultureInfo("pt-PT");
var brazil = new System.Globalization.CultureInfo("pt-BR");

Console.WriteLine(testDate.ToString("d", usa)); // 6/2/2014
Console.WriteLine(testDate.ToString("d", portugal)); // 02-06-2014
Console.WriteLine(testDate.ToString("d", brazil)); // 02/06/2014
此外,为了便于参考,这里有一个站点,其中包含每个受支持的区域性的
CultureInfo
类的所有格式字符串:


您可以使用内置的硬编码格式:

或者,您可以将类与重载一起使用,强制字符串使用该区域性的系统指定格式:

var testDate = DateTime.Parse("2014-06-15");
var usa = new System.Globalization.CultureInfo("en-US");
var portugal = new System.Globalization.CultureInfo("pt-PT");
var brazil = new System.Globalization.CultureInfo("pt-BR");

Console.WriteLine(testDate.ToString("d", usa)); // 6/2/2014
Console.WriteLine(testDate.ToString("d", portugal)); // 02-06-2014
Console.WriteLine(testDate.ToString("d", brazil)); // 02/06/2014
此外,为了便于参考,这里有一个站点,其中包含每个受支持的区域性的
CultureInfo
类的所有格式字符串:


提示:在此处搜索“字符串日期格式”并有大量内容需要筛选。DateTime.Today.ToString(“dd/MM/yy”)提示:在此处搜索“字符串日期格式”并有大量内容需要筛选。DateTime.Today.ToString(“dd/MM/yy”)次要点-希望使用“-”而不是“/”。编辑,感谢注意次要点-希望使用“-”而不是“/”.edited,感谢您的注释-1您正在格式化
DateTime
的新实例,OP需要将字符串解析为
DateTime
,然后对其进行格式化。@Stijn,我现在就给出了字符串日期。这对你有用吗?是的,删除了downvote。-1你正在格式化一个新的
DateTime
,OP需要将一个字符串解析为
DateTime
,然后格式化。@Stijn,我现在给出了字符串日期。这对你有用吗?是的,删除了否决票。根据运行你的代码的计算机的当前文化,我认为
Parse
可能有机会解析错误。最好也执行
ParseExact
或指定
Parse
的区域性。您不一定需要使用
ParseExact
,还有一个参数为
IFormatProvider
Parse
过载。根据运行代码的计算机的当前文化,我认为
Parse
可能有机会解析错误。最好也执行
ParseExact
或指定
Parse
的区域性。您不一定需要使用
ParseExact
,还有一个
IFormatProvider
作为参数的
Parse
重载。
var testDate = DateTime.Parse("2014-06-15");
var usa = new System.Globalization.CultureInfo("en-US");
var portugal = new System.Globalization.CultureInfo("pt-PT");
var brazil = new System.Globalization.CultureInfo("pt-BR");

Console.WriteLine(testDate.ToString("d", usa)); // 6/2/2014
Console.WriteLine(testDate.ToString("d", portugal)); // 02-06-2014
Console.WriteLine(testDate.ToString("d", brazil)); // 02/06/2014