c# - DocuSign 推荐的 DateSigned 选项卡值解析
问题描述
我正在DateSigned
从信封的表单数据中检索一个选项卡。返回的字符串格式如下:
5/29/2018 | 1:21:42 PM PDT
尝试解析此字符串时的标准DateTime.TryParse
和失败。DocuSign 是否有推荐的方法来解析这种格式的字符串?最好,我想将字符串解析为 DateTimeOffset(相对于 DateTime)。DateTimeOffset.TryParse
解决方案
您几乎可以使用DateTime.ParseExact
or来做到这一点DateTime.TryParseExact
。问题是没有可以理解时区缩写的自定义格式字符串。
如果您撕掉存储时区(包括空格)的最后 4 个字符,则可以使用以下代码对其进行解析。
var dateString = "5/29/2018 | 1:21:42 PM"; // Time-zone stripped out
if (DateTime.TryParseExact(dateString,
"M/d/yyyy | h:m:s tt",
CultureInfo.InvariantCulture,
DateTimeStyles.None,
out var theDate))
{
Console.WriteLine(theDate);
}
else
{
Console.WriteLine("Unable to parse date");
}
为了应用时区,您必须通过阅读缩写并以某种方式查找它来手动找出与 UTC 的偏移量。
推荐阅读
- c++ - 函数 GetConsoleScreenBufferInfo() 上的“lpConsoleScreenBufferInfo”是什么?
- python - 如何修复在运行 Django 测试时找不到模块错误
- javascript - JavaScript 中函数的可能返回值是什么?
- clojure - 从 Java 调用 Clojure:为什么“新”样式 (clojure.java.api.Clojure) 比“旧”样式 (gen-class) 更好?
- visual-studio - 如何维护 JS 文件和视图等内容的一份副本
- c++ - C++ 不使用所需的构造函数
- react-native - React Native - 抽屉导航手势起点
- rust - 意外的自动取消引用行为
- java - 堆的结构会随着 Java 中的 GC 类型而变化吗?难道这么引用计数、分代和G1会有不同的堆结构吗?
- javascript - responsivevoice - 我必须将 html 元素内的文本读给声音机器人