mcv*_*vkr 7 csv integration data-migration file binary-data
除了存储为字符串、数字等的其他一些元数据信息之外,我还有一些二进制数据要传输。我拥有的二进制数据是作为 blob 列存储在数据库中的图像文件,我想在 csv 文件中包含 blob 列,并且将csv文件存储在文件系统或 sftp 服务器中,我想它存储在哪里并不重要。
如何将二进制数据存储为csv文件中的另一列?以这种方式传输二进制数据是一个好习惯吗?
Dan*_*_ds 3
通常(也是正确的)方法是将二进制数据编码为Base64。这将使数据增大 4:3 倍。
虽然CSV文件通常被视为文本文件,但您可以将原始二进制数据写入该文件。
然后,该数据应该用双引号括起来,并且数据内所有现有的双引号都必须用另一个双引号转义。引用字段还将处理二进制数据中的任何换行符,但读者必须支持这一点。如果读取器知道它正在读取二进制数据(即,如果您自己提供读取器),则内部也可能存在空字节,这应该不是问题。
但是,如果您的数据必须采用某种 unicode 形式,则可能会出现问题。
因此,一般来说,将原始二进制数据写入 csv 文件并不是一个好习惯,最好使用base64编码。
base64
归档时间:
7 年,9 月 前
查看次数:
8428 次
最近记录:
6 年,1 月 前