今天做了一個項目,就是把一張表里面的照片,讀取、寫入到另一張表中,兩張表分別在不同的兩台Oralce服務器上面,通過接口寫入。
數據庫中的照片為Blog類型,接口照片字段定義為64位字符串格式。
var bPhoto = (
byte[])(mReader[
"
zp
"];
var sPhoto = Convert.ToBase64String(bPhoto);
var sPhoto = Convert.ToBase64String(bPhoto);
上面的代碼已經完成了讀取轉成64位字符串的工作,轉換過后的字符串也能寫進去,但就是看不到照片,plsql有時還直接提示錯誤。
於是又仔細看了一個接口,然后還需要對字符串再進行一下編碼。
sPhoto = HttpUtility.UrlEncode(sPhoto);
具體格式為:
System.Web.HttpUtility.UrlEncode(變量,,Encoding.GetEncoding("GB2312")),后面不指定編碼,默認是UTF-8編碼。
這次終於把照片寫進去了,我的個神哪,就這個編碼折騰了我好長時間,記錄一下。