Advertisement
Guest User

Untitled

a guest
Jun 26th, 2019
119
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.54 KB | None | 0 0
  1. DateTime.ParseExact(s, "yyyyMMddTHHmmss+zzzz", CultureInfo.InvariantCulture);
  2.  
  3. using System;
  4. using System.Globalization;
  5.  
  6. class Test
  7. {
  8. static void Main()
  9. {
  10. string text = "20100804T104413+0100";
  11.  
  12. DateTime dt = DateTime.ParseExact
  13. (text,
  14. "yyyyMMdd'T'HHmmsszzz",
  15. CultureInfo.InvariantCulture);
  16. Console.WriteLine(dt);
  17. }
  18. }
  19.  
  20. // DON'T DO THIS, dangerous code ahead:
  21.  
  22. DateTime time = DateTime.ParseExact(
  23. "20100804T104413+0100",
  24. "yyyyMMdd'T'HHmmssK",
  25. CultureInfo.InvariantCulture,
  26. DateTimeStyles.RoundtripKind);
  27.  
  28. // loosing data when converting back:
  29. string convertedBack = time.ToString("yyyyMMdd'T'HHmmssK");
  30. // convertedBack now contains "20100804T114413+02:00"
  31.  
  32. // DO THIS instead:
  33.  
  34. DateTimeOffset parsedDate = DateTimeOffset.ParseExact(
  35. "20100804T104413+0100",
  36. "yyyyMMdd'T'HHmmsszzz",
  37. CultureInfo.InvariantCulture,
  38. DateTimeStyles.RoundtripKind);
  39.  
  40. // converting back is now easy:
  41. convertedBack = parsedDate.ToString("yyyyMMdd'T'HHmmssK");
  42. // convertedBack contains the string "20100804T104413+01:00"
  43.  
  44. if (offset >= TimeSpan.Zero)
  45. {
  46. result.Append('+');
  47. }
  48. else
  49. {
  50. result.Append('-');
  51. offset = offset.Negate();
  52. }
  53. result.AppendFormat(CultureInfo.InvariantCulture, "{0:00}:{1:00}", new object[] { offset.Hours, offset.Minutes });
  54.  
  55. convertedBack = parsedDate.ToString("yyyyMMdd'T'HHmmssK").Replace(":", "");
  56.  
  57. moment("20150107T085108+0100", 'YYYYMMDDTHHmmssZ').format('YYYY-MM-DD HH:mm:ss')
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement