|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
在1995年5月23日以“Java”的名称正式发布了。Java中对文件的操纵
java中供应了io类库,能够轻松的用java完成对文件的各类操纵。上面就来讲一下怎样用java来完成这些操纵。
1。新建目次
<%@pagecontentType="text/html;charset=gb2312"%>
<%
StringfilePath="c:/aaa/";
filePath=filePath.toString();//中文转换
java.io.FilemyFilePath=newjava.io.File(filePath);
if(!myFilePath.exists())
myFilePath.mkdir();
%>
2。新建文件
<%@pagecontentType="text/html;charset=gb2312"%>
<%@pageimport="java.io.*"%>
<%
StringfilePath="c:/哈哈.txt";
filePath=filePath.toString();
FilemyFilePath=newFile(filePath);
if(!myFilePath.exists())
myFilePath.createNewFile();
FileWriterresultFile=newFileWriter(myFilePath);
PrintWritermyFile=newPrintWriter(resultFile);
StringstrContent="中文测试".toString();
myFile.println(strContent);
resultFile.close();
%>
3。删除文件
<%@pagecontentType="text/html;charset=gb2312"%>
<%
StringfilePath="c:/付出证实单.xls";
filePath=filePath.toString();
java.io.FilemyDelFile=newjava.io.File(filePath);
myDelFile.delete();
%>
4。文件拷贝
<%@pagecontentType="text/html;charset=gb2312"%>
<%@pageimport="java.io.*"%>
<%
intbytesum=0;
intbyteread=0;
file://读到流中
InputStreaminStream=newFileInputStream("c:/aaa.doc");
FileOutputStreamfs=newFileOutputStream("d:/aaa.doc");byte[]buffer=newbyte[1444];
intlength;
while((byteread=inStream.read(buffer))!=-1)
{
out.println("<DT><B>"+byteread+"</B></DT>");
bytesum+=byteread;
System.out.println(bytesum);
fs.write(buffer,0,byteread);
}
inStream.close();
%>
5。全部文件夹拷贝
<%@pagecontentType="text/html;charset=gb2312"%>
<%@pageimport="java.io.*"%>
<%Stringurl1="C:/aaa";
Stringurl2="d:/java/";
(newFile(url2)).mkdirs();
File[]file=(newFile(url1)).listFiles();
for(inti=0;i<file.length;i++){
if(file[i].isFile()){
file[i].toString();
FileInputStreaminput=newFileInputStream(file[i]);
FileOutputStreamoutput=newFileOutputStream(url2+"/"+(file[i].getName()).toString());
byte[]b=newbyte[1024*5];
intlen;
while((len=input.read(b))!=-1){
output.write(b,0,len);
}
output.flush();
output.close();
input.close();
}
}
%>
6。文件下载
<%@pagecontentType="text/html;charset=gb2312"%>
<%@pageimport="java.io.*"%>
<%
StringfileName="zsc104.swf".toString();
//读到流中
InputStreaminStream=newFileInputStream("c:/zsc104.swf");
//设置输入的格局
response.reset();
response.setContentType("bin");
response.addHeader("Content-Disposition","attachment;filename=""+fileName+""");
//轮回掏出流中的数据
byte[]b=newbyte[100];
intlen;
while((len=inStream.read(b))>0)
response.getOutputStream().write(b,0,len);
inStream.close();
%>
7。数据库字段中的文件下载
<%@pagecontentType="text/html;charset=gb2312"%>
<%@pageimport="java.sql.*"%>
<%@pageimport="java.lang.*"%>
<%@pageimport="java.io.*"%>
<%@pageimport="com.jspsmart.upload.*"%>
<%@pageimport="DBstep.iDBManager2000.*"%>
<%
intbytesum=0;
intbyteread=0;
//翻开数据库
ResultSetresult=null;
StringSql=null;
PreparedStatementprestmt=null;
DBstep.iDBManager2000DbaObj=newDBstep.iDBManager2000();
DbaObj.OpenConnection();
//获得数据库中的数据
Sql="select*fromt_local_zhongzhuan";
result=DbaObj.ExecuteQuery(Sql);
result.next();
file://将数据库中的数据读到流中
InputStreaminStream=result.getBinaryStream("content");
FileOutputStreamfs=newFileOutputStream("c:/dffdsafd.doc");
byte[]buffer=newbyte[1444];
intlength;
while((byteread=inStream.read(buffer))!=-1)
{
out.println("<DT><B>"+byteread+"</B></DT>");
bytesum+=byteread;
System.out.println(bytesum);
fs.write(buffer,0,byteread);
}
%>
8。把网页保留成文件
<%@pageimport="java.text.*"%>
<%@pageimport="java.util.*"%>
<%@pageimport="java.io.*"%>
<%@pageimport="java.net.*"%>
<%
URLstdURL=null;
BufferedReaderstdIn=null;
PrintWriterstdOut=null;
try{
stdURL=newURL("http://www.ckuyun.com");
}
catch(MalformedURLExceptione){
throwe;
}
try{
stdIn=newBufferedReader(newInputStreamReader(stdURL.openStream()));
stdOut=newPrintWriter(newBufferedWriter(newFileWriter("c:/163.html")));
}
catch(IOExceptione){
}
/***把URL指定的页面以流的情势读出,写成指定的文件***/
try{
StringstrHtml="";
while((strHtml=stdIn.readLine())!=null){
stdOut.println(strHtml);
}
}
catch(IOExceptione){
throwe;
}
finally{
try{
if(stdIn!=null)
stdIn.close();
if(stdOut!=null)
stdOut.close();
}
catch(Exceptione){
System.out.println(e);
}
}
%>
9。间接下载网上的文件
<%@pageimport="java.io.*"%>
<%@pageimport="java.net.*"%>
<%
intbytesum=0;
intbyteread=0;
URLurl=newURL("http://pimg.163.com/sms/micheal/logo.gif");
URLConnectionconn=url.openConnection();
InputStreaminStream=conn.getInputStream();
FileOutputStreamfs=newFileOutputStream("c:/abc.gif");
byte[]buffer=newbyte[1444];
intlength;
while((byteread=inStream.read(buffer))!=-1)
{
out.println("<DT><B>"+byteread+"</B></DT>");
bytesum+=byteread;
System.out.println(bytesum);
fs.write(buffer,0,byteread);
}
%>
10。按行读文件
<%@pagecontentType="text/html;charset=gb2312"%>
<%@pageimport="java.io.*"%>
<%FileReadermyFileReader=newFileReader("c:/哈哈.txt");
BufferedReadermyBufferedReader=newBufferedReader(myFileReader);
StringmyString=null;
StringresultString=newString();
while((myString=myBufferedReader.readLine())!=null){resultString=resultString+myString+"<br>";}
out.println(resultString);myFileReader.close();
%>
多谢指点,其实我对.net和ruby也不是很了解,对与java也只是刚起步的阶段,只是在学习中有了点想法就写出来了,现在俺本科还没毕业,所以对大型项目基本上也没有什么经验。 |
|