乔山办公网我们一直在努力
您的位置:乔山办公网 > word文档 > java里怎样把文件转换成二进制-word转换二进制,word文档二进制怎么做

java里怎样把文件转换成二进制-word转换二进制,word文档二进制怎么做

作者:乔山办公网日期:

返回目录:word文档


在数据库中存放这些个二进制文件的字段是BLOB,oracle和MysqL里面都是
java中读取 BLOB数据:
首先做查询,拿到查询结果ResultSet rs = XXXX (和普通数据查询一样)
然后:Blob blob = rs.getBlob("字段名"); 拿到你的Blob ,
得到文件的二进制流:InputStream binaryStream= blob.getBinaryStream();,
你的文件数据就在这个流当中,你想怎么用就怎么取,比如,读出来存到一个byte[]中,以便序列化传输,读出来构造成一个File直接存放到本地等等。

举个例子吧e799bee5baa6e79fa5e98193e4b893e5b19e361:从这个binaryStream中读取数据到byte[]的方法,
////////---------------------
/**
* 从binaryStream中读取数据到byte[]的方法
* @param in 即binaryStream
* @return
* @throws Exception
*/
public static byte[] readStreamToByteArray(InputStream in) throws Exception{
ByteArrayOutputStream outputStream = new ByteArrayOutputStream();
byte[] buffer = new byte[1024];
int len = -1;
while((len = in.read(buffer)) != -1) {
outputStream.write(buffer, 0, len);
}
outputStream.close();
in.close();
return outputStream.toByteArray();
}

//

转换文件成为二进制e799bee5baa6e997aee7ad94e4b893e5b19e361数据并保存的Java代码:

取出数据并还原文件到本地的java代码:

[java] view plain copy//读取数据库二进制文件  

public void readerJpg() throws SQLException  

{  

connection=connectionManager.getconn();//自己连接自己的数据库

String sqlString="select images from save_image where id=4";//从数据库中读出要还原文件的二进制码,这里我读的是自己的数据库id为4的文件  

File file=new File("E:\\1.jpg");//本地生成的文件  

if(!file.exists())  

{  

try {  

file.createNewFile();  

} catch (Exception e) {  

e.printStackTrace();  

}  

}  

try {  

byte[] Buffer = new byte[4096*5];  

statement=connection.prepareStatement(sqlString);  

resultSet = statement.executeQuery();  

if(resultSet.next())  

{  

FileOutputStream outputStream = new FileOutputStream(file);  

InputStream iStream = resultSet.getBinaryStream("images");//去字段用getBinaryStream()  

int size=0;  

while((size=iStream.read(Buffer))!=-1)  

{  

System.out.println(size);  

outputStream.write(Buffer,0,size);  

}  

}  

} catch (Exception e) {  

e.printStackTrace();  

}  


如果只是用fileinputstream和fileoutputstream来读取和zd生成文件的话,只是相当于复制/粘贴。
这样是不可能接触文档保护的。
必须使用poi等包解析旧的word文件,然后重新生成一个新的word文件,才能解除保护。

通过流的方式进行转换,FileInputStream fs = new FileInputStream(“word文件目录”);
然后输出流转成字节流,再输出cheng 二进制数据文件

相关阅读

关键词不能为空
极力推荐
  • <em>word</em>中<em>if</em>函数的使用-word

  • 先为要计算的数据添加一个名为a的书签然后在要用if的地方点ctrl+F9,调出{}在{}中输入 IF a >= 60 "及格" "不及格"word表格公式中条件函数if怎么应用" src="/uploads/tu/258.jpg" style="width: 400px; hei

ppt怎么做_excel表格制作_office365_word文档_365办公网