Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/swift/19.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 要使用pyhton swiftclient将sqlite.db文件上载到swift容器,并且始终会出现utf-8错误_Python_Swift_Python 3.x_Openstack_Openstack Swift - Fatal编程技术网

Python 要使用pyhton swiftclient将sqlite.db文件上载到swift容器,并且始终会出现utf-8错误

Python 要使用pyhton swiftclient将sqlite.db文件上载到swift容器,并且始终会出现utf-8错误,python,swift,python-3.x,openstack,openstack-swift,Python,Swift,Python 3.x,Openstack,Openstack Swift,我试图在python代码中使用swiftclient将sqlite.db(二进制文件)上载到swift容器 导入快捷客户端 斯威夫特康涅狄格酒店 文件“/usr/lib/python3.7/codecs.py”,第322行,解码中 (结果,消耗)=自身缓冲区解码(数据,自身错误,最终) UnicodeDecodeError:“utf-8”编解码器无法解码位置43中的字节0xbc:无效的开始字节 我使用的代码是: 导入快捷客户端 bmdatabase=“./logs/test.db” 打开(bmd

我试图在python代码中使用swiftclient将sqlite.db(二进制文件)上载到swift容器

导入快捷客户端 斯威夫特康涅狄格酒店

文件“/usr/lib/python3.7/codecs.py”,第322行,解码中 (结果,消耗)=自身缓冲区解码(数据,自身错误,最终) UnicodeDecodeError:“utf-8”编解码器无法解码位置43中的字节0xbc:无效的开始字节

我使用的代码是:

导入快捷客户端
bmdatabase=“./logs/test.db”
打开(bmdatabase,'r')作为bmdatabase_文件:
#遥远的
correctbmdatabasename=bmdatabase.replace(“./logs/”,“”)
swift\u conn.put\u对象(容器名称、数据库名称、,

contents=bmdatabase_file.read())

我终于自己找到了它,如果我想读取二进制文件,我必须使用“rb”来读取它

import swiftclient
bmdatabase = "./logs/test.db'
    with open(bmdatabase, 'rb') as bmdatabase_file:
                #remote
                correctbmdatabasename = bmdatabase.replace("./logs/", "")
                swift_conn.put_object(container_name,correctbmdatabasename,
                                      contents=bmdatabase_file.read())