1-File类的使用

package com.io;

import java.io.File;
import java.io.FileInputStream;
import java.io.IOException;
import java.io.InputStream;
import java.util.ArrayList;
import java.util.Date;
import java.util.HashMap;
import java.util.Hashtable;
import java.util.List;

import org.junit.Test;

public class FileTest {
    /**
     * 1、File类对象,对应着物理中的一个文件
     * 2、File类中的方法,仅涉及到如何创建、修改、删除等等对文件的操作,操作不了文件内容
     * 操作文件内容需要io
     * 3、File类的对象,常常作为io流具体类的形参
     */
    @Test
    public void fileTest(){
        File file = new File("hello1.txt");//把物理中的一个文件表示成java里面的一个对象

        System.out.println(file.getAbsolutePath());
        System.out.println(file.getParent());
        System.out.println(file.getPath());
        System.out.println(file.getName());

        File file1 = new File("hello2.txt");
        /**
         * 重命名
         * 要求file必须存在,file1必须不存在,才能重命名成功。
         * file和file1都必须是文件或都是目录
         * 在同一盘符
         */
        boolean flag = file.renameTo(file1);
        System.out.println("重命名返回"+flag);

        /**
         * 文件最后修改日期
         */
        System.out.println(new Date(file1.lastModified()));
        file.list();//返回String数组,仅能获取名字
        file.listFiles();//返回file数组,可获取file对象,对file操作
    }

    public static void createFile(String fileDirParam, String fileName)
            throws IOException {
        File fileDir = new File(fileDirParam);
        boolean fileDirFlag = fileDir.exists();

        System.out.println("is fileDir exists "+fileDirFlag);
        if(!fileDirFlag){
            boolean createDirFlag = fileDir.mkdirs();
            System.out.println("is create filedir success " + createDirFlag);
        }

        File file = new File(fileDirParam + fileName);
        boolean fileExistFlag = file.exists();
        System.out.println("is fileExist " + fileExistFlag);
        if(!fileExistFlag){
            boolean flag = file.createNewFile();
            System.out.println("is file created " + flag);
        }

        System.out.println("该分区大小"+file.getTotalSpace()/(1024*1024*1024)+"G");
    }

    public static Long getFileLength(String fileDirParam, String fileName) throws IOException{
        Long fileLength = 0l;
        InputStream ins = null;//输入流

        ins = new FileInputStream(new File(fileDirParam+fileName));
        while(ins.read() != -1){
            fileLength ++;
        }
        System.out.println("file length is "+fileLength);

        ins.close();//FileInputStream是有缓冲区的,所以用完之后必须关闭,否则可能导致内存占满,数据丢失

        return fileLength;
    }

    public static Long getFileLengthNew(String fileDirParam, String fileName) throws IOException{
        Long fileLength = 0l;
        List<Object> objList  = new ArrayList<Object>();
        HashMap ht;
        Hashtable hs;
        objList.hashCode();
        InputStream ins = null;//输入流
        byte[] buffer = new byte[1024];//在栈内存是定义1024个连续的byte单位
        ins = new FileInputStream(new File(fileDirParam+fileName));
        while(ins.read(buffer) != -1){

        }
        System.out.println("file length is "+fileLength);

        ins.close();//FileInputStream是有缓冲区的,所以用完之后必须关闭,否则可能导致内存占满,数据丢失

        return fileLength;
    }

    public static void main(String[] args) {
        try {
            getFileLengthNew("d:/a/d/e/c/", "test.txt");
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}
时间: 2024-12-11 10:12:32

1-File类的使用的相关文章

异常及File类概述

一.异常 1.异常分类: Throwable:Throwable类是 Java 语言中所有错误或异常的超类.它只有两个子类 Error:属于严重问题,只能避免:如内存溢出(OutOfMemory) Exception:可以解决的异常问题 编译时期异常:在写代码期间遇到的异常,不处理没办法运行: 运行时期异常(RuntimeException):在程序运行时期遇到的异常,一般情况不是编译时期异常就是运行时期异常: 2.异常处理: 1)捕获异常:try-catch-finally A:格式:try{

File类--System.out.print(Object obj)的理解

一.File 类(java.io) 概述:Java中使用File类来表示文件或者文件夹对象!     抽象路径名:描述文件或文件夹时,使用的路径符号,就是一个对象的字符串表示形式,如"c:\\";     绝对路径:绝对位置开始的路径;     相对路径:相对位置开始的路径; 构造方法:     File(String pathname)     File(String parent, String child)     File(File parent, String child)

java File类

今天我要总结一下java File类.这个是一个很重要的类. 首先是我画的思维导图. 还写了一些自己写的代码. /** * Date : 2017/6/24 * Author : Hsj * Description : */ public class Demo { /** * File(pathname)表示文件或文件夹路径 * File(String parent,child); * File(File parent,child); */ @Test public void fun() { /

File类详解

一.File类: File类时io包中唯一代表磁盘文件本身的对象.File类定义了一些与平台无关的方法来操作文件,可以通过调用File类中的方法,实现创建.删除.重命名文件等. File类的对象主要用来获取文本的一些信息,如文件所在的目录.文件的长度.文件的读取权限等. 1.文件的创建:目录(文件夹)的创建 File(String pathname):在此File的构造方法中填入一个String类型的路径名:实例如下: String s="d:\\aaa.txt"; File f=ne

java019异常、File类

异常的分类: * Error:称为错误类.表示java运行时系统内部错误或者资源耗尽的错误,仅靠修改程序本身不能恢复执行的.比如:服务器宕机,数据库崩溃等 * Exception:称为异常类,表示程序本身可以处理的错误. 继承体系 * Throwable  * Error   * Exception   * RuntimeException //除了运行时异常都是编译时异常,一般都是程序员本身的错误 JVM默认处理异常的方式: * a:自己将该问题处理,然后继续运行,对应下方的 a 代码 * b

JavaIO(01)File类详解

File类 file类中的主要方法和变量 常量: 表示路径的分割符:(windows) 作用:根据java可移植性的特点,编写路径一定要符合本地操作系统要求的分割符: public static final String separator public static final String pathSeparator package cn.itcast; import java.io.File; public class DemoFile02 { public static void mai

java File类的常见用法

File类简单用法! [java] view plain copy print? [java] view plain copy print? import java.io.File; import java.io.IOException; public class TestFile { public void createFile(String path){ File file=new File(path); if(!file.exists()){//判断文件是否存在 try { file.cr

【转】File类应用 - FilenameFilter 和 FileFilter

FilenameFilter & FileFilter FilenameFilter 和 FileFilter 都是用来过滤文件,例如过滤,以.jpg或者.java结尾的文件,通过看他们的源码:通过使用File类中String[] list(FilenameFilter filter)或者public File[] listFiles(FileFilter filter)方法,把FilenameFilter或者FileFilter接口对象作为参数传入,通过实现接口里面的 boolean acce

黑马程序员——【Java基础】——File类、Properties集合、IO包中的其他类

---------- android培训.java培训.期待与您交流! ---------- 一.File类 (一)概述 1.File类:文件和目录路径名的抽象表现形式 2.作用: (1)用来将文件或文件夹封装成对象 (2)方便于对“文件”与“文件夹属性信息”进行操作 (3)File对象,可以作为参数传递给流的构造函数 (二)构造方法 * 通过File的构造函数创建File对象 方式1:File f = new File("c:\\a.txt"); 方式2:File f2 = newF

黑马程序员——Java I/O流基础知识点(File类)

File工具 File类就是用俩将文件或者文件夹封装对象,弥补流对象的不足--流只能操作数据,不能操作文件夹的 封装的是路径!!! 构造方法演示 1.可以将已有的未出现的文件或者文件夹封装成对象. File f1=new File("c:\\abc\\a.txt"): File f2=new File("d:\\abc","ab.txt"打印,会打印路径.:目录分隔符,为了更好地跨平台File. File类常见功能 1,创建 createNewF