從十六進製製碼字串中還原檔案

2021-04-12 11:47:45 字數 491 閱讀 1418

最近在做乙個專案,用jbuilder 2005和db2 7.0開發。用querydataset取db2中blob欄位時遇到乙個問題:querydataset不能用getbinarystream()的方 法取blob的資料,預設只能用getstring()的方法,取出的string裡面存放的是16進製製流的字串,把這個字串轉換成二進位製流之後輸出 到檔案,卻是亂碼。

從網上找到資料,原來需要把兩個字元轉成乙個位元組碼。**如下:

//注意:此方法和getbytes的不同之處是,這裡需要兩個字元轉成乙個位元組碼。

private byte str2bytearray(string str) else

if (!s.equals("") && !s.equals("##")) }

return result; }

將字串轉換之後,inputstream in = new bytearrayinputstream(byte),然後就可以將inputstream輸出到檔案了。

十六進製制字串操作

任何資料在計算機內部都是以二進位制儲存的,所以進製與資料的儲存無關,只與輸入 輸出有關。所以,對於進製轉換,我們只關心字串中的結果。在上面的第 4 條中提到了 tostring 方法可以將數值轉換成字串,不過在字串 中,結果是以十進位制顯示的。現在我們帶給它加一些引數,就可以將其轉換成十六進製制 使...

十六進製制字串操作

任何資料在計算機內部都是以二進位制儲存的,所以進製與資料的儲存無關,只與輸入 輸出有關。所以,對於進製轉換,我們只關心字串中的結果。在上面的第 4 條中提到了 tostring 方法可以將數值轉換成字串,不過在字串 中,結果是以十進位制顯示的。現在我們帶給它加一些引數,就可以將其轉換成十六進製制 使...

十六進製制字串操作

任何資料在計算機內部都是以二進位制儲存的,所以進製與資料的儲存無關,只與輸入 輸出有關。所以,對於進製轉換,我們只關心字串中的結果。在上面的第 4 條中提到了 tostring 方法可以將數值轉換成字串,不過在字串 中,結果是以十進位制顯示的。現在我們帶給它加一些引數,就可以將其轉換成十六進製制 使...