File类(File类的概述和构造方法)

A:File类的概述
  File更应该叫做一个路径
  文件路径或者文件夹路径
  路径分为绝对路径和相对路径
    绝对路径是一个固定的路径,从盘符开始
    相对路径相对于某个位置,在eclipse下是指当前项目下,在dos下
  查看API指的是当前路径
  文件和目录路径名的抽象表示形式
B:构造方法
  File(String pathname):根据一个路径得到File对象

File类(File类的创建功能)

  A:创建功能
    public boolean createNewFile():创建文件 如果存在这样的文件,就不创建了
    public boolean mkdir():创建文件夹 如果存在这样的文件夹,就不创建了
    public boolean mkdirs():创建文件夹,如果父文件夹不存在,会帮你创建出来
注意事项:
如果你创建文件或者文件夹忘了写盘符路径,那么,默认在项目路径下。

:删除注意事项:

    Java中的删除不走回收站。
    要删除一个文件夹,请注意该文件夹内不能包含文件或者文件夹
 

File类(File类的判断功能)

  A:判断功能
    public boolean isDirectory():判断是否是目录
    public boolean isFile():判断是否是文件
    public boolean exists():判断是否存在
 

File类(File类的获取功能)

  A:获取功能
    public String getAbsolutePath():获取绝对路径
    public String getPath():获取路径
    public String getName():获取名称
    public long length():获取长度。字节数
    public long lastModified():获取最后一次的修改时间,毫秒值
    public String[] list():获取指定目录下的所有文件或者文件夹的名称数组
 File file=new File("D:/");//指定文件目录
String[] str=file.list();//获取指定目录下的所有文件或者文件夹的名称数组
for(String s : str){//加强for循环遍历输出
System.out.println(s);
}
    public File[] listFiles():获取指定目录下的所有文件或者文件夹的File数组
       File file=new File("D:/");//指定文件路径
File[] f=file.listFiles();//获取指定目录下的所有文件或者文件夹的File数组
for(File fi : f){//加强for循环遍历输出
System.out.println(fi);
}

 File file=new File("aa.txt");//文件默认就创建在你创建的项目下面,刷新即可看到
System.out.println(file.exists());//判断文件是否存在
file.createNewFile();//创建文件,不是文件夹
System.out.println(file.exists());//再次判断是否存在
System.out.println(file.getName());//获取文件的名字
System.out.println(file.getAbsolutePath());//获取文件的绝对路径
System.out.println(file.getPath());//获取文件的相对路径
System.out.println(file.getParent());//获取文件的父路径
System.out.println(file.canRead());//文件是否可读
System.out.println(file.canWrite());//文件是否可写
System.out.println(file.length());//文件的长度
System.out.println(file.lastModified());//文件最后一次修改的时间
System.out.println(file.isDirectory());//判断文件是否是一个目录
System.out.println(file.isHidden());//文件是否隐藏
System.out.println(file.isFile());//判断文件是否存在

 
 获取某种格式的文件比如获取某种后缀的图片,并输出文件名:
   File file=new File("C:\\Users\\biehongli\\Pictures\\xuniji");
String[] str=file.list(); for(String s : str){
if(s.endsWith(".jpg") || s.endsWith(".png")){//如果后缀是这种格式的就输出
System.out.println(s);
}
}

endwith

获取文件夹下面子目录里面的文件获取(仅仅获取了子一级目录):

读取目录下文件

7:下面以一些字节输入输出流具体的案例操作(操作的时候认清自己使用的是字节流还是字符流):

注意:read()方法读取的是一个字节,为什么返回是int,而不是byte
字节输入流可以操作任意类型的文件,比如图片音频等,这些文件底层都是以二进制形式的存储的,如果每次读取都返回byte,有可能在读到中间的时候遇到111111111;那么这11111111是byte类型的-1,我们的程序是遇到-1就会停止不读了,后面的数据就读不到了,所以在读取的时候用int类型接收,如果11111111会在其前面补上24个0凑足4个字节,那么byte类型的-1就变成int类型的255了这样可以保证整个数据读完,而结束标记的-1就是int类型
 
 单字节读取与写入
1package com.ningmeng;
2
3 import java.io.FileInputStream;
4 import java.io.FileOutputStream;
5
6 public class FileTest {
7
8 public static void main(String[] args) throws Exception{
9 FileInputStream fis=new FileInputStream("aaa.txt");
10 FileOutputStream fos=new FileOutputStream("bbb.txt",true);
11 //FileOutputStream()后面加true指文件后面可追加
12
13 int a=fis.read();//read()一次读取一个字节 a-->97
14 System.out.println(a);//读取的一个字节输出
15
16 fos.write(97);//write()一次写一个字节 97 -->a
17 fis.close();//一定记得关闭流,养成好习惯
18 fos.close();
19 }
20 }
 
 
 
 
 
 
 
 
 

javaIO流的更多相关文章

  1. Java学习日记之 Java-IO流

    Java中的IO流在处理上分为字节流和字符流.字节流和字符流的区别 : 1.字节流读取的时候,读到一个字节就返回一个字节:  字符流使用了字节流读到一个或多个字节(中文对应的字节数是两个,在UTF-8 ...

  2. javaIO流实现读写txt文件

    javaIO流实现文件读写 文件写入: InputStreamReader BufferedReader 文件读取: FileOutputStream package javatest.basic22 ...

  3. JavaIO流中的拷贝

    JavaIO流中对数据的操作尤为重要,掌握了基本的拷贝操作,才能将各种数据源的操作联系起来. 先来看看对文件夹的拷贝吧: /** * 利用递归实现文件夹的拷贝操作 * 分析:判断 * 是文件:调用拷贝 ...

  4. JavaIO 流(1)IO流介绍

    IO流定义: 流的本质是一组单向有序,分起始和终止的数据传输过程.需要导入import java.io.* IO流分类: 按数据类型分为:字节流和字符流 字节流: 按字节进行读取(可以处理任意类型数据 ...

  5. Java基础 Java-IO流 深入浅出

    建议阅读 重要性由高到低 Java基础-3 吃透Java IO:字节流.字符流.缓冲流 廖雪峰Java IO Java-IO流 JAVA设计模式初探之装饰者模式 为什么我觉得 Java 的 IO 很复 ...

  6. 完美解决JavaIO流报错 java.io.FileNotFoundException: F:\ (系统找不到指定的路径。)

    完美解决JavaIO流报错 java.io.FileNotFoundException: F:\ (系统找不到指定的路径.) 错误原因 读出文件的路径需要有被拷贝的文件名,否则无法解析地址 源代码(用 ...

  7. JavaIO流(输入输出操作)

    Java中执行输出和输入操作,需要通过IO流.例如最常见的System.out.println()就是一个输出流.IO流的类比较多,但核心体系就是由File. InputStream .OutputS ...

  8. javaIO -- 流的体系设计思路、基础分类

    一.流 1. 流的含义 在程序设计中,流是对于数据流动传输的一种抽象描述任何有能力产出数据的数据源,或者有能力接受数据的接收端对象都是一个流. 2. 流的源和目的 数据可能从本地文件读取,或者写入,  ...

  9. JavaIO流文件的操作总结

    IO流的分类 1.根据数据的流向: 输入流:用来读数据,如从外界设备读数据到内存中: 输出流:用来写数据,如从内存输出数据到外界存储设备: 2.根据数据流的格式: 字节流:一般用于声音或者秃瓢等二进制 ...

  10. javaIo流实际应用

    /*查看目录下所有的文件*/ package cn.file; import java.io.File; public class Text2 { public static void main(St ...

随机推荐

  1. 运行gedit报No protocol specified

    No protocol specifiedxhost: unable to open display ":0" 这是因为在Xserver默认情况下,不允许Linux非当前登录用户( ...

  2. Artistic Style 3.1 A Free, Fast, and Small Automatic Formatter for C, C++, C++/CLI, Objective‑C, C#, and Java Source Code

    Artistic Style - Index http://astyle.sourceforge.net/ Artistic Style 3.1 A Free, Fast, and Small Aut ...

  3. 2015年蓝桥杯省赛A组c++第8题(迭代法)

    /* 乐羊羊饮料厂正在举办一次促销优惠活动.乐羊羊C型饮料,凭3个瓶盖可以再换一瓶C型饮料, 并且可以一直循环下去(但不允许暂借或赊账). 请你计算一下,如果小明不浪费瓶盖,尽量地参加活动,那么,对于 ...

  4. 列表的pop()和路径拼接问题

    我竟然发现了新大陆,感觉对列表已经啥也不清楚了 #pop()删除最后一项 l=[1,2,3] a=l.pop(-1) print(a) print(l) 结果: 3 [1, 2] 练习题:计算文件夹的 ...

  5. mongodb 数组查询

    转发自:https://blog.csdn.net/leshami/article/details/55049891 一.演示环境及数据> db.version() 3.2.11 > db ...

  6. day2_python基础

    1.变量: 用来存东西的,左边是名字,右边是值 2.python中的单引号.双信号.三引号 单引号和双引号和三引号没什么区别,用哪个都可以,如果定义字符串里面如果有单引号,则外面用双引号;如果字符串里 ...

  7. python摸爬滚打之day09----初识函数

    1.函数 把一段公共的代码提取出来通过一个变量(函数名)将这些代码重复调用, 使程序可拓展易维护. def 函数名(形参): 函数体 函数名(实参)  -----> 调用该函数 2.return ...

  8. oc培训之变量课后练习

    1.打印常用数据类型长度,打印2.3f,使小数点后面为4位. float i=2.3f; printf("%.4f",i); 2.打印以下图形. int i,j,k,m,n; ;i ...

  9. (4.22)sql server视图/索引视图概念

    (4.22)sql server视图 关键词:sql server视图.索引视图 SQL Server视图是由SQL语句组成的逻辑数据库对象.它也可以称为由SQL语句组成的虚拟表,该SQL语句可能包含 ...

  10. centos安装Django之一:安装openssl

    这几天在部署Django,需要安装的东西有点多,python3.pip3.openssl(pip依赖ssl环境),所以第一步是安装openssl,如何安装呢?主要有三步,随ytkah一起来看看吧 1. ...