我有以下文本二進制表示:「0x255044462D312E340D0A25FFFFFFF ...」 我知道這是一個pdf。 我知道這是來自sql服務器列(圖像數據類型)的文本represantation。如何將二進制表示保存到文件
但我失去了解如何將這個二進制文件保存到我的磁盤上的PDF文件並查看內容。
也許有人可以暗示我正確的方向。
誠摯的問候和感謝提前
我有以下文本二進制表示:「0x255044462D312E340D0A25FFFFFFF ...」 我知道這是一個pdf。 我知道這是來自sql服務器列(圖像數據類型)的文本represantation。如何將二進制表示保存到文件
但我失去了解如何將這個二進制文件保存到我的磁盤上的PDF文件並查看內容。
也許有人可以暗示我正確的方向。
誠摯的問候和感謝提前
我不知道你正在使用什麼數據庫,或者你是如何讓你的字符串,你有以上。
許多數據庫允許您將二進制數據保存爲blob
或其他一些字節數組類型。我相信MSSQL這被稱爲「圖像」,但我不是100%。我將首先查看以下兩個鏈接。第一個鏈接討論如何從數據庫中提取字節數組數據。該示例在Visual Basic中,但如果您正在使用的是C#,則應該輕鬆將其更改爲C#。
第二個鏈接包含如何將該字節數組數據保存到文件系統的示例。
我也建議發佈一些你已經試過的代碼,以便社區可以評論並指出你可能有誤解的地方。
1)http://support.microsoft.com/kb/308042
2)Save and load MemoryStream to/from a file
你是正確的,它是一個PDF文件(至少它僞裝就像你十六進制編碼字節;第一次讀:
255044462D312E340D0A
%PDF-1.4<CR><LF>
所以,你似乎有一個PDF 1.4字符串。
只取兩個字符從字符串,把他們當作十六進制,並將其轉換爲正確的字節,並將其寫入文件。寫斌ary,而不是文本(你不想在那裏添加額外的換行符,PDF太過二進制,不能讓它工作。
http://www.pdfsharp.com/PDFsharp/可以二進制數據讀取,你可以調用.Save(),它將使PDF文件到硬盤爲您提供:
(http://www.dolcevie.com/js/converter.html我使用本網站做了轉換)。
它不是二進制的,它是十六進制的。 –
我試圖把它作爲一個十六進制字符串,因此將其轉換爲一個字節數組,但長度不均勻。 – esc0ba