`

java中使用IO流进行文件操作

    博客分类:
  • 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();   %>

分享到:
评论

相关推荐

    Java中文件IO流.pdf

    Java 中文件 IO 流是指 Java 语言中对文件的输入输出操作,通过定义文件流来实现文件的读写操作。文件流是指在程序中用于文件输入输出的对象, Java 中提供了多种文件流类型,包括 InputStream 和 OutputStream 两大...

    java 使用IO流实现文件的复制

    本篇文章将详细介绍如何使用Java的IO流来实现文件的复制。 首先,我们需要了解Java中的IO流体系。Java的IO库基于流的概念,流可以视为数据的序列,可以从源(如键盘、文件)读取到目的地(如显示器、文件)。IO流...

    Java-Io流,练习

    Java的IO流是Java编程语言中的重要组成部分,它主要用于数据的输入和输出操作。在Java中,IO流被设计为处理任何类型的数据,包括字符、字节甚至对象。本练习旨在帮助初学者理解和掌握Java IO流的基础知识。 一、IO...

    JAVA课件\IO流及文件操作

    java I\O流及文件操作,是初学者很好的资源。

    java中的io流详解

    Java 中的 IO 流是指在 Java 语言中对输入输出操作的抽象,主要用于实现程序与外部设备和其他计算机之间的交流,尤其是对磁盘文件的操作。IO 流的概念是在 1984 年由 C 语言第一次引入的,后来被 Java 语言所采用。 ...

    java io 流,文件读取操作

    Java IO 流、文件读取操作 Java IO 流是 Java 语言中的一种基本输入/输出机制,它提供了多种方式来处理输入/输出操作。在 Java 中,IO 流可以分为两大类:字节流和字符流。字节流主要用于处理二进制数据,而字符流...

    彻底明白java中的IO流

    Java中的IO流是Java核心库java.io中的关键组成部分,它为程序提供了与外部资源交互的能力,包括文件读写、标准设备输入输出等。Java的IO流机制基于流的概念,流可以被视为数据传输的通道,数据按照序列化的方式从...

    IO流 javaio java 流

    总的来说,Java的IO流体系结构复杂而强大,它提供了多种工具和策略来处理各种数据传输场景,包括文件操作、网络通信、对象序列化等。理解并熟练运用这些流可以帮助我们构建高效、可靠的Java应用程序。

    java中的IO流操作大全

    通过以上示例,我们可以了解到Java中IO流的基本概念、分类以及如何操作IO流来处理文件输入输出。在实际开发中,合理使用IO流可以有效地管理程序中的数据传输,提高数据处理效率。同时,熟练掌握各种流类的使用也是...

    java 文件操作及IO流

    Java 文件操作与IO流是Java编程中的核心概念,主要用于数据的读取、写入和传输。在Java中,文件操作通常涉及到`java.io`包下的类,如`File`、`FileOutputStream`、`OutputStreamWriter`和`BufferedWriter`等。下面将...

    Java IO流和文件操作实现过程解析

    Java IO流和文件操作实现过程解析是Java语言中的一种基本操作,IO流是Java中处理输入输出的基础。Java中的IO流主要包括两种类型:字节流和字符流。字节流用于处理二进制数据,而字符流用于处理文本数据。 Java中的...

    java 复制文件 io流操作

    在这个主题中,我们将深入探讨如何使用Java的IO流进行文件复制,重点讨论四个关键函数:`Reader`, `Writer`, `InputStream`, 和 `OutputStream`。 1. **Reader与Writer**: - **Reader** 是字符输入流的抽象类,...

    java中的IO流整理

    总结,Java中的IO流体系庞大且功能强大,理解并熟练掌握IO流的使用对于Java开发者至关重要,无论是进行文件操作、网络通信还是数据存储,都能发挥关键作用。通过学习不同类型的流以及它们的应用场景,开发者可以更加...

    JAVA 的IO流的文件复制

    在Java编程语言中,IO(Input/Output)流是处理数据输入和输出的重要工具,尤其在文件操作中显得尤为重要。本篇文章将详细讲解如何使用Java的IO流进行文件复制,以及如何实现整个文件夹的复制,并检查复制是否成功。...

    通过IO流把文件传到前端并下载.zip

    总结起来,这个场景涉及到Java IO流的使用,Servlet的文件传输,Spring框架的HTTP请求处理,以及一些辅助库和自定义工具类。理解这些核心概念和技术,对于实现“通过IO流把文件传到前端并下载”的功能至关重要。

    java基础之IO流

    Java的IO流体系结构是Java开发中非常重要的组成部分,它不仅涵盖了基本的输入输出操作,还提供了高级的并发处理机制。无论是初学者还是经验丰富的开发者,掌握这些基础知识都将极大地提高编写高效、健壮的Java程序的...

    java IO流实例,包括文件的读写、上传和下载

    总结来说,Java IO流是处理输入输出的核心工具,无论是在本地文件系统还是在网络环境中,都能提供高效、灵活的文件操作手段。通过组合不同的流类,可以实现复杂的文件读写、上传和下载任务,同时适应文本和非文本...

    java IO流精讲 JAVA IO流实例开发

    Java IO流是Java平台中用于处理输入/输出操作的核心组件,它允许程序与各种数据源(如文件、网络连接、内存缓冲区等)进行交互。Java IO流的精讲涵盖了许多概念和技术,包括流的分类、流的方向、缓冲区的使用、字符...

    java中IO流例子

    Java中的IO流是Java平台...在实际项目中,我们经常会遇到需要对文件进行读写、在网络间传输数据或处理用户输入的情况,这时候,Java的IO流就显得尤为重要。通过不断实践和学习,我们可以更加深入地掌握这个强大的工具。

    java的io流文件读写

    对于初学者来说,理解和掌握Java IO流的使用是学习Java编程的基础,也是进阶到更复杂系统开发的关键一步。 Java的IO流主要分为两大类:字节流(Byte Stream)和字符流(Character Stream)。字节流处理的是8位的...

Global site tag (gtag.js) - Google Analytics