如何将二进制表示保存到文件

本文关键字:存到文件 表示 二进制 | 更新日期: 2023-09-27 17:49:27

我有以下文本二进制表示:"0x255044462D312E340D0A25FFFFFFF…"我知道是pdf格式的。我知道这是sql server列(图像数据类型)的文本表示。

但是我不知道如何将这个二进制文件保存到我的磁盘上的pdf文件并查看内容。

也许有人能给我指点一下方向。

提前致以最诚挚的问候和感谢

如何将二进制表示保存到文件

你是对的,它是一个PDF文件(至少它伪装成一个)。你有十六进制编码的字节;第一个读:

255044462D312E340D0A
%PDF-1.4<CR><LF>

所以你看起来有一个PDF 1.4字符串。

只需从字符串中取出两个字符,将它们作为十六进制处理,将它们转换为正确的字节并将它们写入文件。写二进制,而不是文本(你不想在那里添加额外的换行符,PDF太二进制了,不能这样做。

(我使用这个网站:http://www.dolcevie.com/js/converter.html进行转换)

我不确定你正在使用什么数据库,或者你是如何得到你上面的字符串的。

许多数据库允许您将二进制数据保存为blob或其他字节数组类型。我相信在MSSQL中,这被称为"图像",但我不是100%。我将首先按顺序查看以下两个链接。第一个链接讨论了如何从数据库中提取字节数组数据。这个例子是在Visual Basic中,但如果你正在使用c#,应该很容易更改为c#。

第二个链接包含一个如何将字节数组数据保存到文件系统的示例。

我还建议发布一些你尝试过的代码,这样社区可以评论并指出你可能有误解的地方。

1) http://support.microsoft.com/kb/308042
2)。保存和加载MemoryStream到/从文件

http://www.pdfsharp.com/PDFsharp/可以读取二进制数据,您可以调用。save(),它将为您将PDF文件保存到磁盘。