ORACLE的BLOB和BASE64

最近的项目中,要用到ORACLE的BLOB和BASE64。场景是要把图片以BLOB放到ORACLE里去,

然后在WS里,以BASE64加密后,返回给。NET,。NET再解码还原之。过程小结之:

1JAVA上传图片到BLOB字段就不说了,比较简单

2把BLOB用BASE64加密的方法如下:

publicstaticStringioToBase64()throwsIOException{

Stringfilename="d:/sunset.jpg";//源文件

StringstrBase64=null;

try{

InputStreamin=newFileInputStream(fileName);

//in.available()返回文件的字节长度

byte[]bytes=newbyte[in.available()];

//将文件中的内容读入到数组中

in.read(bytes);

strBase64=newBASE64Encoder().encode(bytes);//将字节流数组转换为字符串

in.close();

}catch(FileNotFoundExceptionfe){

fe.printStackTrace();

}catch(IOExceptionioe){

ioe.printStackTrace();

}

returnstrBase64;

}

3。NET的WEBSERVICE接收这个字符串,解BASE64之,C#里比较简单,并且把东西保存了

WebReference.HelloWorldImplServiceh=newWebReference.HelloWorldImplService();

stringstr=h.ReturnBase64String();

byte[]bs=Convert.FromBase64String(str);

FileStreamfile=newFileStream("c:/hello.jpg",FileMode.Create);

file.Write(bs,0,bs.Length);

             file.Close();

相关推荐