,在最近的项目中,要用到ORACLE的BLOB和BASE64。场景是要把图片以BLOB放到ORACLE里去,
然后在WS里,以BASE64加密后,返回给。NET,。NET再解码还原之。过程小结之:
1 JAVA上传图片到BLOB字段就不说了,比较简单
2 把BLOB用BASE64加密的方法如下:
public static String ioToBase64() throws IOException {
String fileName = "d:/sunset.jpg"; //源文件
String strBase64 = null;
try {
InputStream in = new FileInputStream(fileName);
// in.available()返回文件的字节长度
byte[] bytes = new byte[in.available()];
// 将文件中的内容读入到数组中
in.read(bytes);
strBase64 = new BASE64Encoder().encode(bytes); //将字节流数组转换为字符串
in.close();
} catch (FileNotFoundException fe) {
fe.printStackTrace();
} catch (IOException ioe) {
ioe.printStackTrace();
}
return strBase64;
}
3 。NET的WEBSERVICE接收这个字符串,解BASE64之,C#里比较简单,并且把东西保存了
WebReference.HelloWorldImplService h = new WebReference.HelloWorldImplService();
string str = h.ReturnBase64String();
byte[] bs = Convert.FromBase64String(str);
FileStream file = new FileStream("c:/hello.jpg", FileMode.Create);
file.Write(bs, 0, bs.Length);
file.Close();
分享到:
相关推荐
Oracle slq bolb转换Base64 CLOB
总的来说,这个示例提供了一种有效的方法来处理数据库中的图片存储,通过BASE64编码简化了数据的传输和存储,同时在数据库层面利用Blob类型保持了图片数据的完整性。不过,对于大量图片或需要安全保护的图片,更推荐...
它使用Base64编码技术将图片转换为可读的字符串形式,并且在此基础上增加了密码保护功能,确保数据的安全性。在加密过程中,该工具可能采用了某种加密算法对Base64编码后的字符串进行加密,增加了一层额外的安全防护...
通常,我们可以将BLOB数据转化为HEX字符串或Base64编码,以便在文本格式下传输。 3. **数据转换**:由于SQL SERVER的IMAGE字段不再推荐使用,我们可能需要将数据转换为VARBINARY(MAX)类型。如果是从HEX字符串或Base...
本篇文章将深入探讨如何使用C#语言访问Oracle数据库,并重点讲解处理Blob(Binary Large Object)字段的读写操作。 首先,让我们理解C#访问Oracle数据库的基本原理。Oracle数据库提供了一个名为ODP.NET(Oracle ...
在数据库管理中,存储非结构化数据...综上所述,`CLOB`和`BLOB`都是在Oracle中存储图片的有效方法,具体选择哪种方式取决于应用场景和需求。`ClobAndBlob`工具提供了一种便捷的方式来体验和比较这两种方式的使用效果。
首先,我们需要理解什么是图片流和Base64编码。图片流是指图片数据的一种序列化形式,它可以是字节流或字符流,通常用于读取、写入或传输图片数据。Base64是一种编码方式,它将二进制数据转换为可打印的ASCII字符串...
总之,Base64编码和Oracle 11g的CLOB数据类型在Java开发中扮演着重要角色,特别是在处理大量文本和二进制数据时。结合Apache Commons Codec库,可以高效地实现数据的编码、解码和存储。正确理解和使用这些技术,能...
MessageBox.Show("Image saved successfully to Oracle BLOB field!"); conn.Close(); } catch (Exception ex) { MessageBox.Show("Error: " + ex.Message); } } } } 在本文中,我们将深入探讨如何使用C#将...
在Oracle8i版本中,数据库支持了大型对象(LOB)类型,包括BLOB(Binary Large Object)和CLOB(Character Large Object)。这两种数据类型用于存储大量二进制数据(如图片、视频或文档)和文本数据(如长篇文章或...
4. 将BLOB数据转换为可以发送到前端的格式(如Base64编码)。 5. Java将转换后的数据返回给EXTJS前端。 6. 前端解析响应,将Base64字符串转化为图片并在页面上显示。 这个过程涉及到的数据传输优化,如分块传输大...
Oracle镜像文件太大! 可分两步创建Oracle镜像: 1、创建Oracle基础镜像, 创建基础镜像时需要下载很多依赖包。...官方Dockerfile地址:https://github.com/oracle/docker-images/blob/master/OracleDatabase/
3. **处理BLOB数据**:对于查询结果中的BLOB字段,可以使用`ResultSet.getBinaryStream()`方法获取其流,然后将其保存为临时文件或直接转换为Base64编码,以适应Excel格式。 ```java if (rs.next()) { Blob blob =...
1. **前端准备**:在前端页面,用户选择图片后,利用JavaScript或者jQuery等库处理图片,将其转换为Base64编码或者Blob对象,然后通过AJAX或者Fetch API发送到服务器。 2. **后端接收**:后端服务器接收到图片数据...
在Web应用中,展示Blob内容(如用户图像)通常涉及到将BLOB数据转换为HTTP可访问的格式,例如通过Base64编码或直接通过数据库链接提供HTTP服务。在这个例子中,Label1.Text设置为一个包含图片路径的HTML`<img>`标签...
- Base64编码和解码的代码片段: ```csharp string base64String = "your_base64_string"; byte[] imageData = Convert.FromBase64String(base64String); // 将byte[]转换为ImageSource var imageSource = ...
2. CLOB与NCLOB:对于文本格式的图片(如Base64编码),可以使用CLOB或NCLOB(如果需要处理非ASCII字符集)存储。 3. 表结构设计:设计包含图片信息的表,例如,字段包括图片ID、图片名称、图片描述以及BLOB类型的...
$imageData = base64_decode(explode(',', $base64Image)[1]); $filename = time() . "_" . $index . "." . explode('/', $types[$index])[1]; file_put_contents(public_path('uploads/' . $filename), $...
本文将详细讲解如何使用Delphi这一强大的RAD(快速应用开发)工具,结合Oracle和SQL Server两种常见的关系型数据库系统,来实现图片的保存与检索。 首先,我们需要了解Delphi中的图像处理组件,例如TImage、TBitmap...
### Oracle 11g 数据导入到 Oracle 10g 的步骤详解 #### 一、Oracle 11g 数据...需要注意的是,由于Oracle 11g与Oracle 10g在某些功能和特性上的差异,可能还需要额外的手动调整才能确保数据迁移后的完整性和一致性。