我有一个包含PDF数据的Base64编码字符串。使用
这就是我遇到问题的地方:我尝试将字符保存到一个字符串中,但一旦遇到零值(ASCII=
将文本写入文件似乎效果更好,但是将其重命名为
如何在 Delphi 中写入二进制文件?或者将数据保存到流中?基本上我只是试图将编码字符串保存到 PDF/二进制文件中,或在 Delphi 中显示 PDF。
我找了很多信息,在 使用 Delphi 2007 将 Base64 字符串保存到磁盘中的二进制 中找到了一个可能的解决方案,但还有其他方法吗?
EncdDecd
单元,我可以将该字符串解码为字节数组。这就是我遇到问题的地方:我尝试将字符保存到一个字符串中,但一旦遇到零值(ASCII=
0
或#0
或$00
),该字符串就不再追加。例如:uses
EncdDecd;
var
EncodedString : String;
Report : String;
Base64Bytes: TBytes; // contains the binary data
begin
Base64Bytes := DecodeBase64(EncodedString);
for I := 0 to Length(Base64Bytes) - 1 do
begin
Report := Report + Chr(Base64Bytes[I]);
end;
将文本写入文件似乎效果更好,但是将其重命名为
.PDF
后文件无法正确打开。如何在 Delphi 中写入二进制文件?或者将数据保存到流中?基本上我只是试图将编码字符串保存到 PDF/二进制文件中,或在 Delphi 中显示 PDF。
我找了很多信息,在 使用 Delphi 2007 将 Base64 字符串保存到磁盘中的二进制 中找到了一个可能的解决方案,但还有其他方法吗?