java中对文件的操作(二)
以前写过一个java中对文件的操作(http://dev.csdn.net/develop/article/19/19064.shtm),但是不全,就把剩下的一些加到评论里边了,但这次改版以后评论里的就看不到了,我就重新贴一下。
10。按行读文件
<%@ page contentType="text/html; charset=gb2312" %>
<%@ page import="java.io.*" %>
<%
FileReader myFileReader=new FileReader("c:/哈哈.txt");
BufferedReader myBufferedReader=new BufferedReader(myFileReader);
String myString=null;
String resultString=new String();
while((myString=myBufferedReader.readLine())!=null)
{ resultString=resultString+myString+"<br>";
}
out.println(resultString);
myFileReader.close();
%>
11。 数据库里字段文件直接下载到客户端
<%@ page import="java.sql.*"%>
<%@ page import="java.lang.*" %>
<%@ page import="java.io.*" %>
<%@ page import="com.jspsmart.upload.*" %>
<%@ page import="DBstep.iDBManager2000.*"%>
<%
String fileName = "bb.doc".toString();
//打开数据库
ResultSet result=null;
String Sql=null;
PreparedStatement prestmt=null;
DBstep.iDBManager2000 DbaObj=new DBstep.iDBManager2000();
DbaObj.OpenConnection();
//取得数据库中的数据
Sql="select * from marklist order by markdate desc";
result=DbaObj.ExecuteQuery(Sql);
result.next();
//将数据库中的数据读到流中
InputStream in =result.getBinaryStream("markbody");
//设置输出的格式
response.reset();
response.setContentType("application/Msword");
response.addHeader("Content-Disposition","attachment; filename=\"" + fileName + "\"");
//循环取出流中的数据
byte[] b = new byte[1024];
int len;
while((len=in.read(b)) >0)
response.getOutputStream().write(b,0,len);
in.close();
%>
14。把文件编码成base64字符串
<%
String ret=new String();
byte[] bytes=new byte[1024];
String aa="aaaa";
bytes=aa.getBytes();
ret=new sun.misc.BASE64Encoder().encode(bytes); //具体的编码方法
bytes = new sun.misc.BASE64Decoder().decodeBuffer(ret);
aa=new String(bytes);
out.println(aa);
%>
本文地址:http://com.8s8s.com/it/it16386.htm