`
wyz316688
  • 浏览: 16196 次
  • 性别: Icon_minigender_1
  • 来自: 广州
文章分类
社区版块
存档分类
最新评论

java 文件的处理

阅读更多
[color=darkred][/color]一.获得控制台用户输入的信息
Java代码
/** *//**获得控制台用户输入的信息       * @return       * @throws IOException       */  
    public String getInputMe[/size][size=x-small]ssage() throws IOException...{   
         System.out.println("请输入您的命令∶");   
        byte buffer[]=new byte[1024];   
        int count=System.in.read(buffer);   
        char[] ch=new char[count-2];//最后两位为结束符,删去不要   
        for(int i=0;i<count-2;i++)   
             ch[i]=(char)buffer[i];   
         String str=new String(ch);   
        return str;   
     }  

/** *//**获得控制台用户输入的信息
     * @return
     * @throws IOException
     */
    public String getInputMessage() throws IOException...{
        System.out.println("请输入您的命令∶");
        byte buffer[]=new byte[1024];
        int count=System.in.read(buffer);
        char[] ch=new char[count-2];//最后两位为结束符,删去不要
        for(int i=0;i<count-2;i++)
            ch[i]=(char)buffer[i];
        String str=new String(ch);
        return str;
    }

可以返回用户输入的信息,不足之处在于不支持中文输入,有待进一步改进。


二.复制文件

1.以文件流的方式复制文件

Java代码
/** *//**以文件流的方式复制文件       * @param src 文件源目录       * @param dest 文件目的目录       * @throws IOException         */  
    public void copyFile(String src,String dest) throws IOException...{   
         FileInputStream in=new FileInputStream(src);   
         File file=new File(dest);   
        if(!file.exists())   
             file.createNewFile();   
         FileOutputStream out=new FileOutputStream(file);   
        int c;   
        byte buffer[]=new byte[1024];   
        while((c=in.read(buffer))!=-1)...{   
            for(int i=0;i<c;i++)   
                 out.write(buffer[i]);           
         }   
         in.close();   
         out.close();   
     }  

/** *//**以文件流的方式复制文件
     * @param src 文件源目录
     * @param dest 文件目的目录
     * @throws IOException 
     */
    public void copyFile(String src,String dest) throws IOException...{
        FileInputStream in=new FileInputStream(src);
        File file=new File(dest);
        if(!file.exists())
            file.createNewFile();
        FileOutputStream out=new FileOutputStream(file);
        int c;
        byte buffer[]=new byte[1024];
        while((c=in.read(buffer))!=-1)...{
            for(int i=0;i<c;i++)
                out.write(buffer[i]);       
        }
        in.close();
        out.close();
    }

该方法经过测试,支持中文处理,并且可以复制多种类型,比如txt,xml,jpg,doc等多种格式

三.写文件

1.利用PrintStream写文件

Java代码
/** *//**       * 文件输出示例       */  
    public void PrintStreamDemo()...{   
        try ...{   
             FileOutputStream out=new FileOutputStream("D:/test.txt");   
             PrintStream p=new PrintStream(out);   
            for(int i=0;i<10;i++)   
                 p.println("This is "+i+" line");   
         } catch (FileNotFoundException e) ...{   
             e.printStackTrace();   
         }   
     }  

/** *//**
     * 文件输出示例
     */
    public void PrintStreamDemo()...{
        try ...{
            FileOutputStream out=new FileOutputStream("D:/test.txt");
            PrintStream p=new PrintStream(out);
            for(int i=0;i<10;i++)
                p.println("This is "+i+" line");
        } catch (FileNotFoundException e) ...{
            e.printStackTrace();
        }
    }


2.利用StringBuffer写文件

Java代码
public void StringBufferDemo() throws IOException......{   
         File file=new File("/root/sms.log");   
        if(!file.exists())   
             file.createNewFile();   
         FileOutputStream out=new FileOutputStream(file,true);           
        for(int i=0;i<10000;i++)......{   
             StringBuffer sb=new StringBuffer();   
             sb.append("这是第"+i+"行:前面介绍的各种方法都不关用,为什么总是奇怪的问题 ");   
             out.write(sb.toString().getBytes("utf-8"));   
         }           
         out.close();   
     }  

public void StringBufferDemo() throws IOException......{
        File file=new File("/root/sms.log");
        if(!file.exists())
            file.createNewFile();
        FileOutputStream out=new FileOutputStream(file,true);       
        for(int i=0;i<10000;i++)......{
            StringBuffer sb=new StringBuffer();
            sb.append("这是第"+i+"行:前面介绍的各种方法都不关用,为什么总是奇怪的问题 ");
            out.write(sb.toString().getBytes("utf-8"));
        }       
        out.close();
    }

该方法可以设定使用何种编码,有效解决中文问题。

四.文件重命名

Java代码
/** *//**文件重命名 * @param path 文件目录 * @param oldname   原来的文件名 * @param newname 新文件名 */  
public void renameFile(String path,String oldname,String newname)...{   
    if(!oldname.equals(newname))...{//新的文件名和以前文件名不同时,才有必要进行重命名   
         File oldfile=new File(path+"/"+oldname);   
         File newfile=new File(path+"/"+newname);   
        if(newfile.exists())//若在该目录下已经有一个文件和新文件名相同,则不允许重命名   
             System.out.println(newname+"已经存在!");   
        else...{   
             oldfile.renameTo(newfile);   
         }   
     }            
}  

/** *//**文件重命名
     * @param path 文件目录
     * @param oldname  原来的文件名
     * @param newname 新文件名
     */
    public void renameFile(String path,String oldname,String newname)...{
        if(!oldname.equals(newname))...{//新的文件名和以前文件名不同时,才有必要进行重命名
            File oldfile=new File(path+"/"+oldname);
            File newfile=new File(path+"/"+newname);
            if(newfile.exists())//若在该目录下已经有一个文件和新文件名相同,则不允许重命名
                System.out.println(newname+"已经存在!");
            else...{
                oldfile.renameTo(newfile);
            }
        }        
    }


五.转移文件目录


转移文件目录不等同于复制文件,复制文件是复制后两个目录都存在该文件,而转移文件目录则是转移后,只有新目录中存在该文件。

分享到:
评论

相关推荐

    java 文件处理工具类 java 文件处理工具类java 文件处理工具类java 文件处理工具类

    java 文件处理工具类 java 文件处理工具类java 文件处理工具类java 文件处理工具类java 文件处理工具类 java 文件处理工具类java 文件处理工具类java 文件处理工具类java 文件处理工具类 java 文件处理工具类java ...

    java 文件处理工具类 java 文件处理工具类

    java 文件处理工具类 java 文件处理工具类java 文件处理工具类 java 文件处理工具类java 文件处理工具类 java 文件处理工具类java 文件处理工具类 java 文件处理工具类java 文件处理工具类 java 文件处理工具类java ...

    java文件处理基础

    在网上找的关于java文件处理的一些有用的方法

    Java的文件处理相关工具类

    提供java中对文件类的各种基本操作,主要包括获取文件的后缀名称,读取文件内容,写入文件内容,拷贝文件,将文件转换为二进制数组等操作,转换为Blob格式类等操作

    Java读取大文件的处理

    Java读取大文件的处理 Java读取大文件的处理是Java编程中的一项重要技术,特别是在处理大文件时需要注意性能和响应速度。下面我们将对Java读取大文件的处理技术进行详细的介绍。 标题解释 Java读取大文件的处理是...

    常用文件处理方法(java)

    此文件包含常用文件处理方法,其中包含文件压缩,递归删除,图片处理等等,语言基于java。

    java大批量文件处理

    java大批量文件处理

    JAVA对音频文件处理程序

    本项目“JAVA对音频文件处理程序”聚焦于读取音频文件,执行降分贝操作,然后将处理后的音频保存为新的文件。这里我们将深入探讨相关的关键知识点。 首先,Java提供了一个强大的包`javax.sound.sampled`来处理音频...

    Large-File-Processing-master_javanio_java大文件处理_

    本项目“Large-File-Processing-master_javanio_java大文件处理_”显然专注于通过Java NIO实现大文件处理,下面我们将详细探讨相关的知识点。 1. **Java NIO基础**:NIO的核心组件包括通道(Channels)、缓冲区...

    ajax实现java文件下载

    2. **Java文件下载**:在Java Web开发中,服务器端通常使用Servlet或Controller来处理文件下载请求。这些组件会根据客户端请求,读取文件内容,设置合适的HTTP响应头(如Content-Type,Content-Disposition等),并...

    高效处理文件流 java文件

    里面包含了高效处理文件流的一个java文件,工作时总会用到 个人原创 请使用者标明作者信息 谢谢 oneRose 奉献(下载后的朋友们给点意见 谢谢)

    java文件上传程序

    Java 文件上传程序是指使用 Java 语言编写的文件上传程序,负责接收和处理客户端上传的文件。以下是 Java 文件上传程序的相关知识点: 1. 服务器端编程:Java 文件上传程序的服务器端使用 Java 语言编写,主要使用 ...

    java 处理并记录日志文件 *

    java 处理并记录日志文件 *java 处理并记录日志文件 *java 处理并记录日志文件 *java 处理并记录日志文件 *java 处理并记录日志文件 *java 处理并记录日志文件 *java 处理并记录日志文件 *java 处理并记录日志文件 *...

    java 文件管理器

    2. **File 类**:Java中的`java.io.File`类是处理文件和目录的基础。通过这个类,开发者可以获取文件的属性(如大小、路径、是否存在等)、创建新文件、删除文件、重命名文件以及遍历目录结构。 3. **I/O 流**:...

    java文件分割合并

    在Java编程语言中,文件操作是常见的任务之一,特别是在处理大型文件时,有时我们需要将大文件分割成多个小文件,以便于传输、存储或者优化处理效率。同样,我们也可能需要将这些小文件重新合并成原始的大文件。在这...

    java不同文件处理

    用不同方法实现txt文件的读取,并且可以实现step文件的读入

    java 读取文件 文件读取操作

    在Java编程语言中,文件读取是常见的任务,可以用于处理各种类型的数据,如文本、图像、音频等。本文将详细介绍Java中四种不同的文件读取方法:...理解这些基本概念可以帮助你编写出更加高效和灵活的Java文件操作程序。

    java通过文件头内容判断文件类型

    总的来说,通过Java读取文件头内容判断文件类型是一种实用的技术,尤其在处理未知或不安全的文件时。理解并掌握这个方法,能够帮助我们在实际开发中更好地处理各种文件操作,提高程序的健壮性和安全性。

    java 解析 chm 文件

    在Java中处理CHM文件,通常是为了在不支持或没有CHM查看器的环境下访问这些内容,或者为了将CHM内容集成到其他应用或网站中。 要实现这个功能,我们需要了解几个关键知识点: 1. **CHM文件结构**:CHM文件由多个...

    java 分割文件 将大文件分割成小文件

    在Java编程语言中,分割大文件是一项常见的任务,特别是在处理大量数据或需要分批传输大文件的场景下。本文将详细介绍如何使用Java将一个大文件按照特定条件(如文件大小或生成日期)分割成多个小文件。 首先,我们...

Global site tag (gtag.js) - Google Analytics