Java - 文件 (IO)
 
流的分类:
    > 文件流:FileInputStream | FileOutputStream | FileReader | FileWriter
    > 缓冲流:BufferedInputOutStream | BufferedOutputStream | BufferedReader | BufferedWriter
    > 转换流:InputStreamReader | OutputStreamWriter
    > 标准输入 / 输出流:
    > 打印流(很少用):PrintStream | PrintWriter
    > 数据流(很少用):DataInputStream | DataOutputStream
    > 对象流(涉及序列化 / 反序列化):ObjectInputStream | ObjectOutputStream
    >随机存取文件流:RandomAccseeFile
 
一、java.io.File类的大概使用
    > 凡是与输入输出相关的类、接口都定义在java.io包下
    > File类对象是与平台无关的
    > File中的方法,仅涉及到如何创建、删除、重命名等等,涉及文件内容的必须由IO流来做
    > File类的对象长作为IO流的具体类的构造器的形参
 
1、File表示一个文件`
    File file = new File("文件的绝对路径:F:/Program File/1.txt");
    // 在当前目录下
    File file = new File("文件的相对路径:1.txt");
 
2、File表示一个路径
    File file = new File("文件的绝对路径:F:/Program File/");
 
3、方法介绍:
    > getName():文件名
    > getPath():文件路径
    > getAbsoluteFile()
    > getAbsolutePath()
    > getParent()
    > renameTo(File new Name):文件重命名
    > exists():文件是否存在
    > canWrite():文件是否可写
    > canRead():文件是否可读
    > isFile():是否是一个文件
    > isDirectory():是否是一个目录
    > lastModified():文件最后的修改时间
    > length():文件内容的大小
    > createNewFile():新建一个文件
    > delete():删除一个文件
    > mkdir():创建一个文件夹
    > mkdirs():创建一个文件夹,若上层文件夹不存在,则一起创建
    > list():列出file目录下的所有文件,以String的形式
    > listFiles()
 
二、Java IO流的使用
    > 除了处理文本文件的流为字符流,其他的流都是字节流
 
1、FileInputStream | FileOutputStream
    > 抽象基类:InputStream OutputStream Reader Writer
    > FileInputStream:
        >  read():一次读取一个字节,每次调用返回一个字节的数据,当读到文件末尾,返回 -1,读取的文件一定要存在
            File file = new File("文件路径");
            FileInputStream fs = new FileInputStream(file);    
            // 读取文件
            fs.read();
        > read(buffer []):将文件读取到一个Byte类型的buffer大小的数组中,返回读到的字节数 ,当读到文件末尾,返回 -1
    > FileOutputStream:
        > write(buffer []):将一个buffer字节数组写入文件

Java - 文件(IO流)的更多相关文章

  1. Java文件IO流的操作总结

    Java中的IO操作涉及到的概念及相关类很多,很容易弄混,今天特来整理总结一下,并附上一份完整的文件操作的代码. 概念解析 读和写 流就是管道,向管道里面写数据用输出流:write 从管道里面读数据, ...

  2. Java基础-IO流对象之随机访问文件(RandomAccessFile)

    Java基础-IO流对象之随机访问文件(RandomAccessFile) 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.RandomAccessFile简介 此类的实例支持对 ...

  3. java的IO流

    java的IO流继承四大抽象类分别是字节流 inputStream outputStream与字符流 read write.怎么理解记忆很重要. 直接连接读写对象的是结点流,例如对文件读取字节类的名字 ...

  4. Java基础——IO流

    今天刚刚看完java的io流操作,把主要的脉络看了一遍,不能保证以后使用时都能得心应手,但是最起码用到时知道有这么一个功能可以实现,下面对学习进行一下简单的总结: IO流主要用于硬板.内存.键盘等处理 ...

  5. 【Java】IO流简单分辨

    转载请注明原文地址:http://www.cnblogs.com/ygj0930/p/5827509.html Java的IO流体系十分庞大,并且体系层次稍复杂,很容易记混或记错.在此,我把平时经常用 ...

  6. Java中IO流的总结

    有关Java中IO流总结图 流分类 按方向分 输入流 输出流 按单位分 字节流 字符流 按功能分 节点流 处理流(过滤流) 其他 所有的流继承与这四类流:InputSteam.OutputStream ...

  7. JAVA中IO流总结

    本文是在学习中的总结,欢迎转载但请注明出处:http://blog.csdn.net/pistolove/article/details/42119261 我想你对JAVA的IO流有所了解,平时使用的 ...

  8. 第15章-输入/输出 --- 理解Java的IO流

    (一)理解Java的IO流 JAVA的IO流是实现输入/输出的基础,它可以方便地实现数据的输入/输出操作,在Java中把不同的输入/输出(键盘.文件.网络连接等)抽象表述为"流"( ...

  9. Java基础IO流(二)字节流小案例

    JAVA基础IO流(一)https://www.cnblogs.com/deepSleeping/p/9693601.html ①读取指定文件内容,按照16进制输出到控制台 其中,Integer.to ...

随机推荐

  1. [Javascript]3. Improve you speed! Performance Tips

    /** Let inheritance help with memory efficiency */ function SignalFire(ID, startingLogs){ this.fireI ...

  2. 浅谈Android系统开发中LOG的使用

    文章转载至CSDN社区罗升阳的安卓之旅,原文地址:http://blog.csdn.net/luoshengyang/article/details/6581828 在程序开发过程中,LOG是广泛使用 ...

  3. Android 加速Gradle构建项目

    1. 升级gradle 进入项目文件夹$project/gradle/wrapper/gradle-wrapper.properties, 使用最新的gradle. 修改替换为最新的 distribu ...

  4. [Python][MachineLeaning]Python Scikit-learn学习笔记1-Datasets&Estimators

    Scikit-learn官网:http://scikit-learn.org/stable/index.html Datasets 标准的数据集格式为一组多维特征向量组成的集合.数据集的标准形状(sh ...

  5. CSS网页元素居中

    1.水平居中:行内元素解决方案 只需要把行内元素包裹在一个属性display为block的父层元素中,并且把父层元素添加如下属性即可: text-align: center 适用元素:文字,链接,及其 ...

  6. poj1111 DFS

    J - 搜索 Crawling in process... Crawling failed Time Limit:1000MS     Memory Limit:10000KB     64bit I ...

  7. css3的滤镜模糊的效果

    最近在做一个css3的滤镜模糊的效果,但是我发现,有些浏览器一点效果都没有,这是浏览器兼容性导致的,怕今后会忘记所以就先写下来,也希望可以帮到需要的小伙伴. 代码如下: div{//设置半透明滤镜效果 ...

  8. [C++程序设计]字符数组的赋值与引用

    只能对字符数组的元素赋值,而不能用赋值语句对整个数组赋值. char c[5]; c={′C′,′h′,′i′,′n′,′a′}; //错误,不能对整个数组一次赋值 c[0]=′C′; c[1]=′h ...

  9. flash播放器遮挡页面中元素问题解决

    今天在做一个包含Flash播放器的页面弹出效果时发现Flash播放器总是跑到页面最上层,发现这个问题与Flash的”wmode”属性有关,至于该元素详细此处不做记录,解决办法如下: IE:加入参数:& ...

  10. Git工作中用法(Gitlab)

    感觉又有了新的认识.  一共有3个仓库,本地自己的,远程自己的,远程主仓库. 为了方便能及时从主仓库获取更新的内容要将远程主仓库也clone下来 git clone upstream url    / ...