Java核心技术 卷二(一)

书:《Java核心技术 卷二 高级特性 9》

时间:2017.9.4 17:13

1.流

  输入流:可以从其中读取一个字节序列的对象;抽象类(InputStream)

  输出流:可以向其中写入一个字节序列的对象;抽象类(OutputStream)

    流的来源:文件、网络连接、内存块。

  面向字节,所以不方便处理Unicode信息(每个字符使用了多个字节)

    -->Reader & Writer   extends  流(实现两个字节字符)

  InputStream方法:

    abstract int read():读入一个字节,并返回读入的字节,结束时返回-1.子类需要覆写此方法。

    abstract int write(int b):向某个位置写出一个字节。

      note:这两个方法在执行时会阻塞线程,直到读入或写出完成。

    available:检查当前可读入的字节数量

    flush:将缓冲区的流输出。

  读写完成后必须调用close方法关闭流,否则若流过多,将耗尽操作系统资源。

  FIleInputStream & FileOutputStream可以提供附着在一个磁盘文件上的输入流和输出流。参数为文件名或完整路径名。

    使用System.getProperty("user.dir")获取当前路径

System.out.println(System.getProperty("user.dir")); --> D:\WorkSpace\Eclipse\IOTest

    完整路径时我们需要获取操作系统的操作符,比如windows下:

System.out.println(File.separator); --> /    

    也可以使用双反斜杠的写法:C:\\windows\\123.txt

一个基本的读文件程序:

import java.io.FileInputStream;

public class IOTest {

    public static void main(String[] args) {
        try {
            FileInputStream fileInputStream = new FileInputStream("D:\\WorkSpace\\Eclipse\\IOTest\\123.txt");
            int i = fileInputStream.available();
            for(int j=0;j<i;j++) {
                System.out.printf("%c",fileInputStream.read());
            }
            fileInputStream.close();
        } catch (Exception e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
    }
}
时间: 2024-08-06 11:33:32

Java核心技术 卷二(一)的相关文章

《Java核心技术卷二》笔记(三)正则表达式

正则表达式语法 一个正则表达式描述了字符串的构成规则(模式).如果一个具体的字符串正好符合正则表达式描述的这个规则,这个字符串就是与表达式匹配的.先看一下怎么描述这种规则,也就是正则表达式语法.正则表达式类似于前面文章中的glob模式,但更加复杂和强大. 此处只列出常用的语法,更复杂的可以查正则表达式的详细资料. 正则表达式的构成元素: 字符 普通字符             与该字符自身匹配 \unnnn\xnn  \0n   \0nn  \0nnn        十六进制或十进制码元代表的字

《Java核心技术卷二》笔记(一)流与文件

一.流的概念 在Java中,可以提供字节序列的对象,或者可以接收字节序列的对象,都可以抽象成流.系统中的文件,网络,内存这些设备都可以读入或者写入字节,自然也可以用流的方式来操作.能向程序中提供字节序列,即可以从其中读入字节序列,这样的对象显然就是输入流.相反的,能够接收程序送来的字节序列,也就是可以向其中写入字节序列,就是输出流. Java提供丰富的流类家族,实现了各种常用的输入输出操作功能,如文件.内存读写等.InputStream和OutputStream类分别是字节输入/输出流继承体系的

《Java核心技术卷二》笔记(二)文件操作和内存映射文件

文件操作 上一篇已经总结了流操作,其中也包括文件的读写.文件系统除了读写以为还有很多其他的操作,如复制.移动.删除.目录浏览.属性读写等.在Java7之前,一直使用File类用于文件的操作.Java7提供了Path,Paths,Files,FileSystem等类,使文件操作变得简单和全面.此外还有很多第三方库也提供了文件操作的便捷类如common.io中的FileUtils类,Ant api提供的FileSet等类. 1.File类的使用 Java7之前版本中,File类即代表了路径对象也封装

Java核心技术卷二部分笔记

第1章 流与文件 1.2 文本输入与输出 第3章 网络 3.3 可中断套接字 第4章 数据库编程 4.5.2 读写LOB 4.6 可滚动和可更新的结果集 4.8 元数据 第6章 高级Swing 6.1 列表

Java核心技术:随机访问文件

import java.io.*; import java.time.LocalDate; import java.util.Scanner; public class Test { public static void main(String[] args){ // TextFileTest.test(); RandomAccessTest.test(); } } class Employee { private String name; private double salary; priv

读《java核心技术卷一》有感

过去一个多月了吧.才囫囵吞枣地把这书过了一遍.话说这书也够长的,一共706页.我从来不是个喜欢记录的人,一直以来看什么书都是看完了就扔一边去,可能有时候有那么一点想记录下来的冲动,但算算时间太紧,很多也是有始无终,毕竟在之前研究研究程序也只是自己的一个爱好而已,但没有想到签了一个程序员的工作.唉,这老天也太捉弄人了吧,让一个学电气工程(强电方向)学生毕业之后去写代码,而且是与硬件完全无关的代码.真是白念几年大学了.行了,就行发这么多牢骚吧. <java核心技术>有两个卷,我只看了卷一,从我的感

《Java核心技术 卷1 基础知识 原书第9版》pdf

下载地址:网盘下载 内容简介 编辑 CayS.Horstmann等编著,公飞编译的<Java核心技术>(CoreJava)自第1版出版以来,一直备受广大Java程序设计人员的青睐,畅销不衰,是Java经典书籍.第8版针对JavaSE6平台进行了全面更新,囊括了Java平台标准版(JavaSE/J2SE)的全部基础知识,提供了大量完整且具有实际意义的应用实例,详细介绍了Java语言基础知识.面向对象程序设计.接口与内部类.事件监听器模型.swing图形用户界面程序设计.打包应用程序.异常处理.登

java核心技术学习笔记之一程序设计概述

Java 核心技术之一程序设计概述 一.   Java语言的特点 简单行 :取经于C++,排除了C++不常用的指针.结构等,增加垃圾回收. 面向对象:与C++不同是单继承,但是可以继承多接口.完全面向对象的语言: 网络技能:Socket,FTP,Http,URL编程简单: 健壮性:避免指针错误使用: 安全性:构建防病毒防篡改系统: 体系结构中立:字节码: 可移植性: 解释性:可以解释任何移植了的字节码: 高性能: 多线程 动态性: 二.   Internet 和 Java Applet 在网页中

Java核心技术-4-对象与类

4 对象与类 4.1 面向对象程序设计概述 1 类 封装(数据隐藏):将数据和行为组合在一个包中,并对对象使用者隐藏数据的实现方式. 对象中的数据成为实例域,操纵数据的过程称为方法. 2 对象 对象的三个主要特性:对象的行为behavior,对象的状态state,对象标识identity.3 识别类 4 类之间的关系 依赖uses-a,一个类的方法操纵另一个类的对象 聚合has-a,一个类的对象(其数据域)包含另一个类的对象 继承is-a,类A扩展类B. 4.2 使用预定义类 1 对象与对象变量