Java中对文件的操作

Java中对文件的操作

      java中提供了io类库,可以轻松的用java实现对文件的各种操作。下面就来说一下如何用java来实现这些操作。

      1。新建目录 

<%@   page   contentType= "text/html;charset=gb2312 "%> 
<% 
String   filePath= "c:/aaa/ "; 
filePath=filePath.toString();//中文转换 
java.io.File   myFilePath=new   java.io.File(filePath); 
if(!myFilePath.exists()) 
myFilePath.mkdir(); 
%> 

 

    2。新建文件 

<%@   page   contentType= "text/html;charset=gb2312 "%> 
<%@   page   import= "java.io.* "   %> 
<% 
String   filePath= "c:/哈哈.txt "; 
filePath=filePath.toString(); 
File   myFilePath=new   File(filePath); 
if(!myFilePath.exists()) 
myFilePath.createNewFile(); 
FileWriter   resultFile=new   FileWriter(myFilePath); 
PrintWriter   myFile=new   PrintWriter(resultFile); 
String   strContent   =   "中文测试 ".toString(); 
myFile.println(strContent); 
resultFile.close(); 
%> 

 

  3。删除文件 

<%@   page   contentType= "text/html;charset=gb2312 "%> 
<% 
String   filePath= "c:/支出证明单.xls "; 
filePath=filePath.toString(); 
java.io.File   myDelFile=new   java.io.File(filePath); 
myDelFile.delete(); 
%> 

 
  4。文件拷贝 

<%@   page   contentType= "text/html;   charset=gb2312 "   %> 
<%@   page   import= "java.io.* "   %> 
<% 
int   bytesum=0; 
int   byteread=0;   
file://读到流中 
InputStream   inStream=new   FileInputStream( "c:/aaa.doc "); 
FileOutputStream   fs=new   FileOutputStream(   "d:/aaa.doc ");byte[]     buffer   =new     byte[1444]; 
int   length; 
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。整个文件夹拷贝 

<%@   page   contentType= "text/html;charset=gb2312 "%> 
<%@   page   import= "java.io.* "   %> 
<%String   url1= "C:/aaa "; 
    String   url2= "d:/java/ "; 
    (new   File(url2)).mkdirs(); 
  File[]   file=(new   File(url1)).listFiles(); 
  for(int   i=0;i <file.length;i++){ 
    if(file[i].isFile()){ 
      file[i].toString(); 
      FileInputStream   input=new   FileInputStream(file[i]); 
      FileOutputStream   output=new   FileOutputStream(url2+ "/ "+(file[i].getName()).toString()); 
      byte[]   b=new   byte[1024*5]; 
        int   len; 
        while((len=input.read(b))!=-1){ 
        output.write(b,0,len); 
        } 
        output.flush(); 
        output.close(); 
        input.close(); 
    } 
  } 
%>   

 

  6。文件下载 

<%@   page   contentType= "text/html;   charset=gb2312 "   %> 
<%@   page   import= "java.io.* "   %> 
<% 
    String   fileName   =   "zsc104.swf ".toString(); 
//读到流中 
InputStream   inStream=new   FileInputStream( "c:/zsc104.swf "); 
//设置输出的格式   
    response.reset();   
    response.setContentType( "bin "); 
    response.addHeader( "Content-Disposition ", "attachment;   filename=\ " "   +   fileName   +   "\ " "); 
//循环取出流中的数据   
    byte[]   b   =   new   byte[100];   
    int   len;   
    while((len=inStream.read(b))   > 0)   
    response.getOutputStream().write(b,0,len);     
    inStream.close();   
%> 

 

  7。数据库字段中的文件下载 

<%@   page   contentType= "text/html;   charset=gb2312 "   %> 
<%@   page   import= "java.sql.* "%> 
<%@   page   import= "java.lang.* "   %> 
<%@   page   import= "java.io.* "   %> 
<%@   page   import= "com.jspsmart.upload.* "   %> 
<%@   page   import= "DBstep.iDBManager2000.* "%> 
<% 
int   bytesum=0; 
int   byteread=0; 
//打开数据库 
ResultSet   result=null; 
String   Sql=null; 
PreparedStatement   prestmt=null;   
DBstep.iDBManager2000   DbaObj=new   DBstep.iDBManager2000(); 
DbaObj.OpenConnection(); 
//取得数据库中的数据 
Sql= "select     *     from     t_local_zhongzhuan   "; 
result=DbaObj.ExecuteQuery(Sql); 
result.next(); 

file://将数据库中的数据读到流中   
InputStream   inStream=result.getBinaryStream( "content ");   
FileOutputStream   fs=new   FileOutputStream(   "c:/dffdsafd.doc "); 

byte[]     buffer   =new     byte[1444]; 
int   length; 
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。把网页保存成文件 

<%@   page   import= "java.text.* "%> 
<%@   page   import= "java.util.* "%> 
<%@   page   import= "java.io.* "%> 
<%@   page   import= "java.net.* "%> 
<% 
  URL   stdURL   =   null; 
  BufferedReader   stdIn   =   null; 
  PrintWriter   stdOut   =   null; 
  try   { 
    stdURL   =   new   URL( "http://www.163.com "); 
  } 
  catch   (MalformedURLException   e)   { 
      throw   e; 
  } 

try   { 
      stdIn   =   new   BufferedReader(new   InputStreamReader(stdURL.openStream())); 
      stdOut   =   new   PrintWriter(new   BufferedWriter(new   FileWriter( "c:/163.html "))); 
  } 
  catch   (IOException   e)   { 
  } 

 

  /***把URL指定的页面以流的形式读出,写成指定的文件***/ 

  try   { 
      String   strHtml   =   " "; 
      while((strHtml   =   stdIn.readLine())!=null)   { 
      stdOut.println(strHtml); 
      } 
  } 
  catch   (IOException   e)   { 
      throw   e; 
  } 
  finally   { 
      try   { 
          if(stdIn   !=   null) 
              stdIn.close(); 
          if(stdOut   !=   null) 
              stdOut.close(); 
      } 
      catch   (Exception   e)   { 
          System.out.println(e); 
      } 
  } 
%> 

 

  9。直接下载网上的文件

<%@   page   import= "java.io.* "%> 
<%@   page   import= "java.net.* "%> 
<% 
int   bytesum=0; 
int   byteread=0; 

URL   url   =   new   URL( "http://pimg.163.com/sms/micheal/logo.gif "); 
  URLConnection   conn   =   url.openConnection(); 
  InputStream   inStream   =   conn.getInputStream(); 
  FileOutputStream   fs=new   FileOutputStream(   "c:/abc.gif "); 

    byte[]     buffer   =new     byte[1444]; 
      int   length; 
        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。按行读文件  

<%@   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();   %> 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值