将JSON转换为Python对象:如何处理DateTime转换?

时间:2011-12-02 20:35:52

标签: json python-2.7

我有一个C#控制台应用程序,它将POCO类序列化为JSON字符串;我使用JSON.Net进行序列化。

此应用程序中的JSON被转储到一个文件中,并由Python 2.7脚本读入。

这是问题所在。 JSON序列化获取我的类上的所有日期时间属性并将它们转换为以下格式:

/Date(1322856016353-0500)/

当我使用json.parse;我在Python中收到了相当于我的原始类;除了所有DateTime属性现在都是包含“/ Date(1322856016353-0500)/”而不是Python datetime字段的字符串。

看起来我需要手动解析字符串的时间并手动创建日期时间obj。在我这样做之前;有一个更好的方法吗?也许我可以将DateTime属性序列化为另一种格式的JSON?或者使用不同的Python JSON解析器?

非常感谢任何建设性的意见。

谢谢, 弗兰克

1 个答案:

答案 0 :(得分:3)

您可以指定所需的格式。尝试这样的事情:

DATETIME_FORMAT = '%Y-%m-%d %H:%M:%S'

序列化之前: time = datetime.strftime(time, DATETIME_FORMAT)

反序列化后: time = datetime.strptime(time, DATETIME_FORMAT)