保存时用
File file = new File("文件路径")
InputStream is = new ByteArrayInputStream(new FileInputStream(file ))
statement.setBlob(1, is, file.length())
你没要读取的,我没写。用的MySQL数据库DROP TABLE IF EXISTS `t_song_file`
CREATE TABLE `t_song_file` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`file_name` varchar(50) DEFAULT NULL,
`file` blob,
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=3 DEFAULT CHARSET=utf8
package com.song.test
import java.io.File
import java.io.FileInputStream
import java.io.InputStream
import java.sql.Connection
import java.sql.PreparedStatement
import com.song.dao.DBUtil
public class InputStreamInDB {
public static void main(String[] args) throws Exception {
Connection conn=DBUtil.getConnection()
String sql="insert into t_song_file(file_name,file) values(?,?)"
PreparedStatement ps=conn.prepareStatement(sql)
ps.setString(1, "hello.zip")
ps.setBlob(2, getFileInputStream("C:/Users/songjunliang/Desktop/hello.zip"))
int tag=ps.executeUpdate()
if(1==tag)
{
System.out.println("success")
}
ps.close()
conn.close()
}
public static InputStream getFileInputStream(String filePath) throws Exception
{
File file=new File(filePath)
InputStream is=new FileInputStream(file)
return is
}
}
不知道你要什么样的文本,文本中的内容是否是有格式的:
这里提供下思路,供参考:
1.文本文件,基本上式字符格式的了,可以用Reader io流
2.如果是格式化的文本,可以按数据的长度读取, readInt readByte...
3.保存到数据库 当然用JDBC了,如果你读取出来封装成POJO了,也可以选择 OM框架
import java.io.BufferedReader
import java.io.FileInputStream
import java.io.IOException
import java.io.InputStreamReader
/**
* 文件读取和写入数据库
* @author 樊云升
*
*/
public class FilesReader {
public FilesReader(){
}
/**
* 读取文件内容
* @param FILE
* @return
*/
public String re_content(String FILE){
String content=""
try{
BufferedReader bufRead=new BufferedReader(new InputStreamReader(new FileInputStream(FILE)))
String str
while((str=bufRead.readLine())!=null){
content+=str+"\r\n"
}
}catch(IOException ioe){
ioe.printStackTrace()
}
return content
}
/**
* 将特定字符写入数据库中(原来我写的是重写文件,你这里这里将content写入数据库就OK)
* @param path
* @return
*/
public boolean writeFile(String content){
try{
//数据库写入代码
}catch(Exception e){
out.close()
return false
}
return true
}
public static void main(String[] args) {
String content=new FilesReader().re_content("D:\\AJAX.htm")
new FilesReader().writeFile(content)
}
}
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)