【发布时间】:2025-11-26 23:00:03
【问题描述】:
我有以下 JSON 响应:
{
"status": "Success",
"label": "pdf_base64_string",
"order": "ABC123456"
}
我正在尝试根据以下代码从 Base64 字符串保存 PDF 文件:
FileData = Base64DecodeString(pdf_base64_string)
fileNum = FreeFile
FilePath = "C:\label.pdf"
Open FilePath For Binary Access Write As #fileNum
Put #fileNum, 1, FileData
Close #fileNum
这会导致 PDF 文件损坏/无效(PDF 查看器无法识别)。
【问题讨论】:
-
您需要将 base64 文本解码为二进制流并将 that 写入文件。这里有一些相关代码thydzik.com/…
-
特别是在 Excel VBA 中:*.com/questions/39126617/…
-
在原始字符串上调用这些函数的顺序是什么?这是我正在尝试的,但结果文件似乎仍然无效:
byte2Bin(decodeBase64(pdf_base64_string)) -
使用十六进制编辑器检查文件。它似乎是无效的 PDF?如果是,请检查 base64 编码字符串 - 使用外部转换器解码。它会产生相同的结果吗?
-
刚刚解决了问题,我将 Base64Encode 结果放入 FileData 中,这是一个错误(255 个字符限制为字符串)。我只需要像这样
Put #fileNum, 1, Base64Encode(pdf_base64_string)直接在文件写入块中对编码字符串调用 Base64Encode