我想将一些数据导出到手机上安装的应用中。所以我在应用程序中导出了一些虚拟数据,以便研究如何生成要导入的数据。
第一步:这是一个gzip压缩文件。没问题,这就是gunzip的用途。
第二步:
$ file export
export: Smile binary data version 0: binary encoded, shared String values disabled, shared field names
我从来没有听说过微笑文件(因为表情符号而谷歌很难看),但我发现了pySmile。问题:我甚至不是关于python的菜鸟。更具体一点:我对python一无所知。
但我还是试过了。
import pysmile
import sys
f = open(sys.argv[1],'r')
a = f.read()
print repr(a)
o=pysmile.decode(a)
print o
这与我自己生成的微笑文件相当不错,但是使用给定的导出微笑文件,我收到以下错误:
Traceback (most recent call last):
File "dec.py", line 7, in <module>
o=pysmile.decode(a)
File "/usr/local/lib/python2.7/dist-packages/pysmile/decode.py", line 224, in decode
state.copy_shared_value_string()
File "/usr/local/lib/python2.7/dist-packages/pysmile/decode.py", line 151, in copy_shared_value_string
raise SMILEDecodeError('Cannot lookup shared value, sharing disabled!')
pysmile.decode.SMILEDecodeError: Cannot lookup shared value, sharing disabled!
之后我尝试调查两个文件之间的差异在哪里:
export: Smile binary data version 0: binary encoded, shared String values disabled, shared field names enabled
dummyf: Smile binary data version 0: binary encoded, shared String values enabled, shared field names enabled
除了错误跟踪之外,我还提到了我的问题:如何在pysmile(解码和编码)中启用共享,还有另一种无python方法将微笑文件转换为文本文件(这是更重要的是,反过来呢?