我有一个很大的Excel文件,其中包含几个表。我可以使用VBA代码中的ADODB.Stream将它们序列化为JSON:
这是VBA代码:
Dim st As ADODB.Stream
' create a stream object
Set st = New ADODB.Stream
' set properties
st.Charset = "utf-8"
st.Type = adTypeText
' open the stream object and write some text
st.Open
st.WriteText myString
st.SaveToFile filepath, adSaveCreateOverWrite
st.Close
现在我想用Python读取它,以将其传递给带有以下内容的数据框:
这是Python代码:
import JSON
with open(myfilecomplete) as f:
data = json.load(f)
我收到此错误:
UnicodeDecodeError:'charmap'编解码器无法解码位置407330中的字节0x9d:字符映射到
文件很大(1MB文本)。我什至不知道如何找到字符407330。
此外,我应该以最常见的编码形式以uft-8格式写入光盘。对吧?
为什么JSON无法解密utf-8?
您明白了:
with open(myfilecomplete, encoding='utf-8-sig') as f:
data = json.load(f)