毕向东_Java基础视频教程第20天_IO流(1~4)

第20天-01-IO流(File概述)

File类:

  1. 用来将文件或者文件夹封装成对象, 方便进行操作.
  2. File对象可以作为参数, 传递给流对象的构造函数.
  3. 流对象不能操作文件夹; 流对象不能操作文件的属性信息(rwx等), 只能操作文件的数据.

构造方法:

File(File parent, String child)   Creates a new File instance from a parent abstract pathname and a child pathname string.

File(String pathname)   Creates a new File instance by converting the given pathname string into an abstract pathname.

File(String parent, String child)   Creates a new File instance from a parent pathname string and a child pathname string.

package bxd;

import java.io.File;

public class FileDemo {

    public static void consMethod() {
        // 将a.txt封装成File对象, 可以将已有的或者未创建的"文件或文件夹"封装成对象.
        File file1 = new File("a.txt");
        File file2 = new File("/Users/Eric/Documents/IdeaProjects/Servlet_JSP/JDBCDemo/b.txt");
        String parent = "/Users/Eric/Documents/IdeaProjects/Servlet_JSP/JDBCDemo";
        File file3 = new File(parent, "c.txt");

        /* static String    separator
                The system-dependent default name-separator character, represented as a string for convenience.
        */
        File file4 = new File(File.separator + "abc" + File.separator + "xyz.txt");

        // 会以字符串形式打印出创建File对象时传入的参数,不会改变.
        sop("file1: " + file1);
        sop("file2: " + file2);
        sop("file3: " + file3);
        sop("file4: " + file4);
    }

    public static void main(String[] args) {
        consMethod();
    }

    public static void sop(Object object) {
        System.out.println(object);
    }
}

第20天-02-IO流(File对象功能-创建与删除)

boolean createNewFile()

  Atomically creates a new, empty file named by this abstract pathname if and only if a file with this name does not yet exist.

boolean mkdir()

  Creates the directory named by this abstract pathname.

boolean mkdirs()

  Creates the directory named by this abstract pathname, including any necessary but nonexistent parent directories.

static File createTempFile(String prefix, String suffix)

  Creates an empty file in the default temporary-file directory, using the given prefix and suffix to generate its name.

static File createTempFile(String prefix, String suffix, File directory)

  Creates a new empty file in the specified directory, using the given prefix and suffix strings to generate its name.

boolean delete()

  Deletes the file or directory denoted by this abstract pathname.

void deleteOnExit()

  Requests that the file or directory denoted by this abstract pathname be deleted when the virtual machine terminates.

package bxd;

import java.io.File;
import java.io.IOException;

/*
File类常见方法:
1. 创建
    boolean createNewFile()  在指定位置创建文件. 如果创建成功则返回true; 如果创建失败或文件已经存在则返回false.
                             相比较, new一个输出流对象会马上创建文件, 且遇到文件已存在时会覆盖源文件.
    boolean mkdir()          创建指定的目录
    boolean mkdirs()         创建指定的目录, 包括所有所需但不存在的父目录
2. 删除
    boolean delete()         删除失败则返回false.
    void deleteOnExit()      文件有可能正被程序访问而无法删除, 此时可以将文件设置为程序退出时删除.
*/
public class FileDemo1 {

    public static void method_1() throws IOException {
        File file = new File("file.txt");
        sop("create file.txt: " + file.createNewFile());
    }

    public static void method_2() throws IOException {
        File dir = new File("dir_abc");
        dir.mkdir();
    }

    public static void method_3() {
        File file = new File("file.txt");
        sop("delete file.txt: " + file.delete());
    }

    public static void main(String[] args) throws IOException {
        method_2();
    }

    public static void sop(Object object) {
        System.out.println(object);
    }
}

第20天-03-IO流(File对象功能-判断)

boolean canExecute()   Tests whether the application can execute the file denoted by this abstract pathname.

boolean canRead()   Tests whether the application can read the file denoted by this abstract pathname.

boolean canWrite()   Tests whether the application can modify the file denoted by this abstract pathname.

boolean exists()     Tests whether the file or directory denoted by this abstract pathname exists.

boolean isDirectory()   Tests whether the file denoted by this abstract pathname is a directory.

boolean isFile()     Tests whether the file denoted by this abstract pathname is a normal file.

boolean isHidden()   Tests whether the file named by this abstract pathname is a hidden file.

boolean isAbsolute()   Tests whether this abstract pathname is absolute.

package bxd;

import java.io.File;
import java.io.IOException;

/*
File类常见方法:
3. 判断
    boolean exists()     判断文件/文件夹是否存在
    boolean canExecute() 判断文件是否可执行, 如果文件不存在也返回false
    boolean isFile()
    boolean isDirectory  判断File对象是否是文件/目录, 如果不存在也返回false
        所以判断时要注意区分: 是/否/不存在

    boolean isAbsolute() 判断File对象所对应的pathname是否是绝对路径(与文件/文件夹是否存在无关)
*/
public class FileDemo2 {

    public static void method_1() throws IOException {
        File file = new File("file.txt");
        sop("file.txt exists: " + file.exists());
        sop("file.txt canExcute: " + file.canExecute());
    }

    public static void method_2() {
        File file = new File("file.txt");
        sop("file.txt isFile: " + file.isFile());
        sop("file.txt isDirectory: " + file.isDirectory());
    }

    public static void main(String[] args) throws IOException {
        method_2();
    }

    public static void sop(Object object) {
        System.out.println(object);
    }
}

第20天-04-IO流(File对象功能-获取)

时间: 2024-10-08 16:01:21

毕向东_Java基础视频教程第20天_IO流(1~4)的相关文章

毕向东_Java基础视频教程第20天_IO流(11~14)

第20天-11-IO流(Properties简述) .properties是一种主要在Java相关技术中用来存储应用程序的可配置参数的文件的文件扩展名.它们也可以存储用于国际化和本地化的字符串,这种文件被称为属性资源包(Property Resource Bundles). 第20天-12-IO流(Properties存取) package bxd; import java.io.IOException; import java.util.Properties; import java.util

毕向东_Java基础视频教程第19天_IO流(20~22)

第19天-20-IO流(改变标准输入输出设备) static void setIn(InputStream in) Reassigns the "standard" input stream. static void setOut(PrintStream out) Reassigns the "standard" output stream. package bxd; import java.io.*; public class TransStreamDemo3 {

毕向东_Java基础视频教程第19天_IO流(15~16)

第19天-15-IO流(读取键盘录入) 第19天-16-IO流(读取转换流) package bxd; import java.io.BufferedReader; import java.io.IOException; import java.io.InputStream; import java.io.InputStreamReader; /* 字符流 FileReader FileWriter BufferedReader BufferedWWriter 字节流 FileInputStre

毕向东_Java基础视频教程第21天_IO流(1)

第21天-01-IO流(对象的序列化) ObjectInputStream与ObjectOutputStream 被操作的对象需要实现Serializable接口(标记接口) 非必须, 但强烈建议所有可序列化类都显式声明serialVersionUID package bxd; import java.io.*; public class ObjectStreamDemo { public static void readObj() throws Exception { ObjectInputS

黑马程序员_毕向东_Java基础视频教程_Java基础学习知识点总结

黑马程序员_毕向东_Java基础视频教程 Java基础学习知识点总结 2016年01月06日  day01 一.基础知识:软件开发 1.什么是软件?软件:一系列按照特定顺序组织的计算机数据和指令的集合. 2.常见的软件:系统软件:如:DOS,Windows,Linux等.应用软件:如:扫雷,迅雷,QQ等. 3.什么是开发?制作软件. 二.基础知识:人机交互方式 4.软件的出现实现了人与计算机之间的更好的交互. 5.交互方式:图形化界面:这种方式简单直观,使用者易于接受,容易上手操作.命令行方式:

Java基础知识_毕向东_Java基础视频教程笔记(22-25 GUI 网络编程 正则)

22天-01-GUIGUI:Graphical User Interface 图形用户接口 Java为GUI提供的对象都存在java.Awt和javax.Swing两个包中CLI:Common line User Interface 命令行用户接口 Awt:Abstract Window ToolKit(抽象工具包),需要调用本地系统方法实现功能,属于重量级控件.Swing:在Awt的基础上,建立的一套图形界面系统,其中提供了更多的组件,而且完全由Java实现,增强了移植性,属于轻量级控件. 继

Java基础知识_毕向东_Java基础视频教程笔记(5-10)

06天-05-面向对象(帮助文档的制作javadoc):java文档生成命令:javadoc -d filepatn demo.java   -author -version(可选)一个类中默认会有一个空参数的构造函数,这个默认的构造函数的权限和所属类一致默认构造函数的权限是随着的类的变化而变化的. 06天-06-面向对象(静态代码块):静态代码块的特点:随着类的加载而加载,只执行一次,用于给类的初始化.非静态代码块的特点:随着类的实例建立而分配内存空间初始化.构造代码块的特点:随着类的实例而初

Java基础知识_毕向东_Java基础视频教程笔记(13)

13天-01-String String类适用于描述字符串事物. 常见的操作:1.获取: 1.1字符串中包含的字符数,也就是字符串的长度. int length():获取长度 1.2根据索引值获取位置上某个字符. char charAt(int index); 1.3根据字符获取该字符在字符串中的位置 int indexOf(int ch);返回的是ch在字符串中第一次出现的位置. int indexOf(int ch,int fromIndex);从fromIndex指定位置开始,获取ch在字

JavaSE学习总结第20天_IO流2

20.01  递归概述和注意事项 递归:方法定义中调用方法本身的现象 递归注意事项: 1.要有出口,否则就是死递归 2.次数不能太多,否则就内存溢出 3.构造方法不能递归使用 20.02  递归求阶乘的代码实现及内存图解 例: 1 public class Practice 2 { 3 public static void main(String[] args) 4 { 5 System.out.println(jieCheng(5)); 6 } 7 public static int jieC