Mam problem z konwersją daty i godziny w formacie ciągu, ale nie mogę przekonwertować jej przy użyciu "yyyyMMdd"
formatu.
Mój kod to:
string tpoc = refSubClaim.BenefitsFolder.BenefitFolderIdNumber.ToString();
string[] tpocinfo = Regex.Split(tpoc,";");
for (int i = 0; i < tpocinfo.Length; i++)
{
switch (i)
{
case 0:
{
string[] tpoc2 = Regex.Split(tpocinfo[0], ",");
claimantAuxillaryRecord.TPOCDate2 = tpoc2[0].ToString();
claimantAuxillaryRecord.TPOCAmount2 = Convert.ToDecimal(tpoc2[1]);
claimantAuxillaryRecord.FundingDelayedBeyondTPOCStartDate2 = tpoc2[2].ToString();
}
break;
obj.ToString("yyyyMMdd")
;Odpowiedzi:
jeśli masz datę w ciągu znaków w formacie „ddMMyyyy” i chcesz przekonwertować ją na „rrrrMMdd”, możesz zrobić tak:
źródło
Analiza daty i godziny:
Aby przeanalizować DateTime, użyj jednej z następujących metod:
DateTime.Parse
DateTime.ParseExact
Alternatywnie możesz użyć wzorca try-parse :
DateTime.TryParse
DateTime.TryParseExact
Przeczytaj więcej o niestandardowych ciągach formatujących datę i godzinę .
Konwersja DateTime na ciąg:
Aby zwrócić DateTime jako ciąg w formacie „rrrrMMdd”, możesz użyć
ToString
metody.string date = DateTime.ToString("yyyyMMdd");
Twój przypadek:
W Twoim przypadku, zakładając, że nie chcesz obsługiwać scenariusza, w którym data ma inny format lub jej brakuje, najwygodniej byłoby użyć
ParseExact
:źródło
Możesz przekonwertować swój ciąg na
DateTime
wartość taką:Możesz przekonwertować
DateTime
wartość na sformatowany ciąg w następujący sposób:źródło
Ciąg do formatu daty rrrr-MM-dd: Przykład:
źródło
Jeśli chcesz, aby DATA była również ciągiem z CZASEM . Możemy to zrobić:
źródło
Użyj,
DateTime.TryParseExact()
jeśli chcesz dopasować do określonego formatu datyźródło
Możesz użyć
DateTime.TryParse()
zamiastDateTime.Parse()
.Z
TryParse()
masz wartość zwracaną, jeśli się powiodło iParse()
musisz obsłużyć wyjątekźródło
Po prostu zrób w ten sposób.
Miłego kodowania :)
źródło
Jeśli chcesz tylko usunąć ukośniki z łańcucha, czy nie po prostu je zastępujesz?
Przykład:
myDateString powinno teraz mieć wartość „20130328”.
Mniej przesady :)
źródło
To prosty sposób na konwersję do formatu
źródło
Na podstawie nazw właściwości wygląda na to, że próbujesz przekonwertować ciąg na datę przez przypisanie:
Jest to prawdopodobnie spowodowane bieżącą kulturą interfejsu użytkownika i dlatego nie może poprawnie zinterpretować ciągu daty po przypisaniu.
źródło
Z C # 6:
Wynik będzie taki: „2019-01-15T11: 46: 33.2752667Z”
źródło
Prostszy sposób, na który natknąłem się również podczas wyszukiwania tej odpowiedzi;
źródło
DateTime
? LubiszDateTime newDate = DateTime.Parse(Session["date"].ToString());
?Możesz wypróbować te kody
Lub
źródło