零以下一行错误,如何找到对应的正数?
Error in a line below zero, how do I find the corresponding positive number?
我正在尝试处理一个非常大的 xml 文件。在某些时候,它似乎包含一些奇怪的字符,导致处理脚本失败。
我想看看给定行中的内容,但是 Python (Python 3.6.9) 说该行是负数:
xml.parsers.expat.ExpatError: not well-formed (invalid token): line -1503625011, column 60
我假设行号是负数,因为它高于最大整数值。
我怎样才能将这个负数“转换”为正数,以便我可以将它提供给 head file -n (number) | tail -n1
以隔离那条故障线路?
看起来它错误地使用了带符号的 32 位 int。
将 -1503625011
转换为 unsigned int 得到 2791342285
要'un-sign'这样的整数,见How to convert signed to unsigned integer in python
注意:这只会影响行号 >= 231 (2,147,483,647
)
我正在尝试处理一个非常大的 xml 文件。在某些时候,它似乎包含一些奇怪的字符,导致处理脚本失败。
我想看看给定行中的内容,但是 Python (Python 3.6.9) 说该行是负数:
xml.parsers.expat.ExpatError: not well-formed (invalid token): line -1503625011, column 60
我假设行号是负数,因为它高于最大整数值。
我怎样才能将这个负数“转换”为正数,以便我可以将它提供给 head file -n (number) | tail -n1
以隔离那条故障线路?
看起来它错误地使用了带符号的 32 位 int。
将 -1503625011
转换为 unsigned int 得到 2791342285
要'un-sign'这样的整数,见How to convert signed to unsigned integer in python
注意:这只会影响行号 >= 231 (2,147,483,647
)