zoukankan      html  css  js  c++  java
  • 黑马程序员 java文件操作

      在过去的时候用JAVA开发程序时常常会涉及到文件的操作,在过去很大的一段时间里面搞不清到底是用InputStream还是OutputStream,很可笑有时候总被一些小细节给糊弄。

    后来只要从外部文件读取数据那么就用InputStream(字节输入流)、Reader(字符输入流),而如果你是向文件写入那么就用OutputStream(字节输出流)、Writer(字符输出流)来进行输出。

    File类是对获取和操作文件的类,通常有以下三种构造方法来创作file对象

    1、  File(String filename);

    2、  File(String directoryPath,String filename);

    3、 File(File f,String filename);
    File类的常见方法。

        1,创建。

            boolean createNewFile():创建文件。

            boolean mkdir():创建文件夹。

            boolean mkdirs():创建多级目录。

        2,删除。

            boolean delete():

            deleteOnExit();

        3,判断。

            isAbsolute():是否是绝对路径。

            exists():是否存在。

            isDirectory():是否是文件夹。

            isFile():是否为文件。

        4,获取。

            long length():文件大小。

            getName() // 文件名

            getParent()  //  父目录, 如果封装File对象时,不指定路径, 返回 null

            getPath()    //路径  封装什么路径就是什么路径

            getAbsolutePath() 绝对路径。 //无论封装什么路径,获取的都是绝对路径。

           

            String[] list():获取指定目录下当前的文件夹和文件名称。

            File[] listFiles():获取指定目录下当前的文件夹和文件对象。

            static File[] listRoots():获取本机有效盘符。

            String[] list(FilenameFilter ):获取指定过滤器过滤后的文件或者文件夹名称

            File[] listFiles(FileFilter ):获取指定过滤器过滤后的文件或者文件夹对象

        5,renameTo:对文件进行改名。还可以剪切。

        6,compareTo();  //File实现了Compareable接口。 文件可以排序。

    从文件中读取数据

    FileinputStream istream=new FileInputStream(File file);

    输出文件

    FileoutputStream类

    这个类提供了基本的文件写入能力。通常提供两个构建方法

    FileoutputStream(String name)

    FileOutputStream(File file);

    Write方法可以提供到字节定稿到输出流到达的目的地

    下面的程序是用户输入字符然后把字符存入到文件 line中

    import java.io.*;

    public class Example10_5

    {

             public static void main(String args[])

             {

                       int b;

                       byte buffer[]=new byte[100];

                       try{System.out.println("输入一行文本,并存入磁盘:");

                                b=System.in.read(buffer);

                                b="dsfadsf";

                                FileOutputStream writefile=new FileOutputStream("line.txt");

                                writefile.write(buffer,0,b);

                       }catch(IOException e)

                       {

                                System.out.println("Error"+e);

                       }

             }

    }

    BufferedReader类可以实现FileReader行读取然后写入文件

    Write(String s,int off,int len)把字符串s从s处开始写len个字符。

  • 相关阅读:
    初来乍到
    OpenGl基础篇(1.0)
    说说结构化方法和面向对象方法
    浅谈软件项目管理
    测试篇
    结构化与面向对象化之应用比较
    敏捷软件开发VS传统软件开发
    SOSO街景地图 API (Javascript)开发教程(1)- 街景
    阿里实习内推面经
    Android工程开发笔记<一>
  • 原文地址:https://www.cnblogs.com/tianyake/p/2359296.html
Copyright © 2011-2022 走看看