@PostMapping("/read")
public void test() throws IOException {
Reader f = new FileReader("C:\\ActivityLog\\测试.txt");
InputStream a = new FileInputStream("C:\\ActivityLog\\测试.txt");
try {
//创建一个要读文件的对象
// a.available()
//new一个中介a进行读取
int count = 0;
while (count == 0) {
count = a.available();
byte[] b = new byte[count];
a.read(b);
BusinessFile businessFile = new BusinessFile();
Date date = new Date();
SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");
businessFile.setCreateTime(df.format(date));
businessFile.setFileName("文件1.txt");
businessFile.setFileContent(b);
businessFile.setDelFlag("0");
businessFileMapper.insert(businessFile);
} catch (IOException e) {
e.printStackTrace();
} finally {
f.close();
a.close();
@PostMapping("/write")
public void write() throws IOException {
// Reader f = new FileReader("C:\\ActivityLog\\测试out.txt");
// InputStream a = new FileInputStream("C:\\ActivityLog\\测试.txt");
OutputStream a = new FileOutputStream("C:\\ActivityLog\\测试out.txt");
try {
//创建一个要读文件的对象
List
list= businessFileMapper.selectList(null);
byte [] b=list.get(0).getFileContent();
a.write(b,0,b.length);
} catch (IOException e) {
e.printStackTrace();
} finally {
// f.close();
a.close();
以下是
java
操作oracle数据库. 1, 先将文件对像或其他对像
转
为byte[];2, 在目标表中insert一条记录,相应的
blob
字段为empty_
blob
();3, 在autoCommit属性为false的前提下, 锁表查询如: select _
blob
from test for update;4, 从结果集中取
blob
字段,得到输出流,并将字符数组写入:
这几天做的一个项目是将文件系统,存放于oracle中,这时候插入数据库的方式有两种,一种是直接的插入Byte,另一种就是插入
blob
对象,文章中我会写到如何将byte和
blob
相互
转
化
在
Java
中,通常情况下不建议对同一个InputStream对象直接使用两次,因为InputStream是一次性读取的流,读取一次后,流中的位置指针会移动到末尾,再次读取可能无法获取到预期的数据。“InputStream就类比成一个杯子,杯子里的水就像InputStream里的数据,你把杯子里的水拿出来了,杯子的水就没有了,InputStream也是同样的道理。其实像
File
InputStream这样的文件流,要实现重复使用可能也并不是很难,利用缓存什么的应该能做到(大文件读取就悲剧了,呵呵呵)。
function dataURLto
Blob
(dataurl) {
var arr = dataurl.split(','), mime = arr[0].match(/:(.*?);/)[1],
bstr = atob(arr[1]), n = bstr.length, u8arr = new Uint8Array(n);
while (n--) {
u8arr[n] = bstr.charCodeAt(n);
import
java
.io.
File
;import
java
.io.
File
InputStream;import
java
.io.
File
OutputStream;import
java
.io.IOException;import
java
.io.InputStream;import
java
.io.OutputStream;import
java
.sql.
Blob
;import
java
.sq...
在我们的程序开发当中,经常会用到
java
.sql.
Blob
、byte[]、InputStream之间的相互
转
换,但在JDK的API当中,又没有直接给我们提供可用的API,下面的程序片段主要就是实现它们之间互换的util.一、byte[]=>
Blob
我们可以通过Hibernate提供的表态方法来实现如:org.hibernate.Hibernate.Hibernate.createBlo
通过读取输入流中的数据并将其写入输出流,我们可以获取
Blob
数据的字节数组表示。最后,我们使用字节数组创建一个字符串对象,将
Blob
数据
转
换为字符串。通过读取输入流中的数据并将其写入输出流,我们可以获取
Blob
数据的字节数组表示。最后,我们使用字节数组创建一个字符串对象,将
Blob
数据
转
换为字符串。本文将介绍如何在
Java
中进行字符串和
Blob
类型数据的相互
转
换,并提供相应的源代码示例。本文将介绍如何在
Java
中进行字符串和
Blob
类型数据的相互
转
换,并提供相应的源代码示例。