还有Java的byte []的替代方法吗?FileFile = Base64.getMimeDecoder()。decode(fileBase64);在Python中?

时间:2019-07-31 13:20:22

标签: java python

我正在用python重写Java代码。该代码通过Spring与其他文件一起使用。它会打开JSON,DBF,RAR,XML等格式,并将数据转换为String。 每个代码中总会有一行:

byte[] decodeFile = Base64.getMimeDecoder().decode(fileBase64); #(1)

或在块中:

public interface FileService {

    String convert(String file, String fileName);

    @Service
    class FileServiceImpl implements FileService {

        @Override
        public String convert(String fileBase64, String fileName) {
            byte[] decodeFile = Base64.getMimeDecoder().decode(fileBase64);
            try {
                FileOutputStream out = new FileOutputStream(new File(fileName));
                out.write(decodeFile);
                out.close();
                return convertToJson(new File(fileName));
            } catch (IOException e) {
                return null;
            }
        }

基本上我不了解第(1)行的目的。

所以,问题是:我应该在Python中做类似的事情吗?如果有必要,那么:如何在Python中做到这一点?

谢谢您的任何建议。

1 个答案:

答案 0 :(得分:0)

按照以下行

byte[] decodeFile = Base64.getMimeDecoder().decode(fileBase64); #(1)

MIME编码/解码器以MIME格式生成Base64编码的输出/解码值。

您可以将quopri python模块用于类似的事情。 您可以在下面的链接中引用。

https://docs.python.org/3/library/quopri.html

您必须使用这样的代码

encodedValue = quopri.decodestring(<your encoded>, True)