`
yp307567950
  • 浏览: 104026 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

流式I/O和文件

    博客分类:
  • java
阅读更多

1. 流和基础知识
    1) 一个流是字节的源或目的
    2) 二种基本的流是:输入流和输出流
2. InputStream方法
    1) 三个基本的read()方法
       a. int read(): 从流里读出的一个字节或者-1;
       b. int read(byte[]):将数据读入到字节数组中,并返回所读的字节数;
       c. int read(byte[], int , int):两个int参数指定了所要填入的数组的子范围。
    2) 其它方法
       a. void close(): 关闭流,如使用过滤器流,关闭栈顶部的流,会关闭其余的流。
       b. int available(): 返回可从流中读取的字节数。
       c. skip(long): 丢弃了流中指定数目的字符。
 OutputStream方法
    1) 三个基本的read()方法
       a. void write():
       b. void write(byte[]):
       c. void write(byte[], int , int):
       写输出流。
    2) 其它方法
       a. void close(): 关闭流,如使用过滤器流,关闭栈顶部的流,会关闭其余的流。
       b. int flush(): 允许你强制执行写操作。
3. FileInputStream和FileOutputStream
    1) 结点流,使用磁盘文件。
    2) 要构造一个FileInputStream, 所关联的文件必须存在而且是可读的。
    3) 要构造一个FileOutputStream而输出文件已经存在,则它将被覆盖。
       FileInputStream infile = new FileInputStream("myfile.dat");
       FIleOutputStream outfile = new FileOutputStream("results.dat");
4. BufferInputStream和BufferOutputStream
       过滤器流,可以提高I/O操作的效率
5. DataInputStream和DataOutStream
       通过流来读写Java基本类,注意DataInputStream和DataOutputStream的方法是成对的。
6. PipedInputStream和PipedOutputStream
       用来在线程间通信.
7. Reader和Writer
       1) Java技术使用Unicode来表示字符串和字符,而且提供16位版本的流,以便用类似的方法处理字符。
    2) InputStreamReader和OutputStreamWriter作为字节流与字符流中的接口。
    3) 如果构造了一个连接到流的Reader和Writer,转换规则会在使用缺省平台所定义的字节编码和Unicode之间切换。
8. 文件
    1) 一个文件对象可以代表文件或者目录;
    2) File类处理所有磁盘操作;
    3) 构造方法:
       a. File(File parent, String child):
       b. File(String pathName);
       c. File(String parent, String child);
       d. File(URI uri)
    4) 目录分隔
       File.separator
9. 随机存取文件
    1) 实现了二个接口:DataInput和DataOutput;
    2) 只要文件能打开就能读写;
    3) 通过文件指针能读写文件指定位置;
    4) 可以访问在DataInputStream和DataOutputStream中所有的read()和write()操作;
    5) 在文件中移动方法:
       a. long getFilePointer(): 返回文件指针的当前位置。
       b. void seek(long pos): 设置文件指针到给定的绝对位置。
       c. long length(): 返回文件的长度。
10. 串行化
    1) 将一个对象存放到永久存储器上称为保持;
    2) 只有对象的数据被串行化;
    3) 标记为transient关键字的数据不被串行化。

分享到:
评论

相关推荐

    java i/o包流式输入输出和文件操作

    这是有关Java流式输入输出和文件操作的ppt讲解,通过它你可以更好的学习Java流式输入输出和文件操作。希望对大家有所帮助!!!

    javabook

    ─建立GUIs - 模块9──AWT事件模型 - 模块10──AWT组件库 - 模块11──Java基础类 - 模块12──Java Applets介绍 - 模块13──线程 - 模块14──流式I/O和文件 - 模块15──网络

    Sun培训教材中文稿

    - 模块14──流式I/O 和文件 本模块阐述了既可读写数据又可读写文本文件的类,并介绍了对象流的概念。 - 模块15──网络 本模块介绍了Java网络编程包并演示了传输控制协议/Internet 协议(TCP/IP)客户──服务器...

    Java ppt 教程(精简、易学、易懂、典型例题)

    第一章 Java的基本语法 Java代码的位置 Java 是严格区分大小写的 Java 是一种自由格式语言 注释 标识符 Java中的常量 变量的概念与作用 类型转化 ...1流式I/O基础 2文件 3随机存取文件 4对象输入/输出流

    嵌入式系统/ARM技术中的专家指点,解析Linux文件系统

    Linux是一类Unix计算机操作系统的统称。Linux操作系统的内核的名字也是“Linux”。Linux操作系统也是自由软件和开放源代码发展中最着...但是从来没有人询问Windows或者NTFS中的高性能I/O(高IOPS或者高流式I/O)。  

    文件属性(基于C的文件操作)

    在ANSI C中,对文件的操作分为两种方式,即流式文件操作和I/O文件操作,下面就分别介绍之。

    专家指点解析Linux文件系统

    Linux是一类Unix计算机操作系统的统称。Linux操作系统的内核的名字也是“Linux”。Linux操作系统也是自由软件和开放源代码发展中着名...但是从来没有人询问Windows或者NTFS中的高性能I/O(高IOPS或者高流式I/O)。  

    1操作系统复习题.doc

    软硬件结合的方法 5、常用的文件存取方法有两种,顺序存取和( A )存取。 A.流式 B. 串联 C.随机 D.索引 6、.作业在后备队列一旦被调度程序选中,作业就处于( C )状态。 A.提交 B.执行 C.完成 D.收容 7.( A )是...

    深入解析Windows操作系统中文.part2.rar

    映射文件I/O和文件缓存 564 I/O请求包 564 针对单层驱动程序的I/O请求 569 针对分层的驱动程序的I/O请求 577 I/O完成端口 585 驱动程序检验器(Driver Verifier) 589 9.4 即插即用(PnP)管理器 590 即插即用支持的...

    pandas和excel、csv高效读写的增强库-pandasrw

    pandas的I/O相对各类包一直偏慢且存在易用性问题,特别是对于大文件的读写,瓶颈非常明显。pandasrw 库通过将各类库进一步封装,提高了pandas 读写excel、csv等文件的性能和易用性。 这个库是本人发布在github的一...

    C、C++文件输入输出操作总结

    流式文件操作和I/O文件操作: 下面就介绍一下这些函数 1.fopen() fopen的原型是:FILE *fopen(const char *filename,const char *mode),fopen实现三个功能 为使用而打开一个流 把一个文件和此流相连接 给此流...

    Java使用NFS实现上传、下载、读取文件工具类

    封装性:工具类封装了NFS相关的复杂连接、认证和I/O操作细节,使得业务层代码无需关心底层通信协议,只需通过简单API即可操作远程文件。 可配置性:允许灵活配置NFS服务器地址、挂载点以及其他相关参数,使工具类...

    专家帮您解析Linux文件系统

    经常有一些用户询问关于高性能I/O的需求——如果他们可以使用Linux系统而不是AIX或者...但是从来没有人询问Windows或者NTFS中的高性能I/O(高IOPS或者高流式I/O),因为这是不可能存在的。专家帮您解析Linux文件系统。

    Petit FatFs pff3.zip

    它按照ANSI C编写,与磁盘I / O层完全分离。即使RAM大小小于扇区大小,它也可以集成到内存有限的微控制器中。此处还提供全功能的FAT文件系统模块。 特征 RAM消耗非常小(44字节工作区+特定堆栈)。 代码大小非常小...

    everarchive:基于 webtorrent、assetgraph 和 mongodb 的 gridfs 构建的分布式、不可审查的网页归档器

    这涉及为 webtorrent 编写一个新的存储模块,它通过对进行流式 I/O 去做 从 torrent 中检索页面内容 清理可能相关的功能改写为资产图的 writeAssetsToGridFs 转换 闪亮的前端(它实际上只是一个无样式的文本输入和...

    计算机基础知识测试题.docx

    在文件系统中,假设按文件的逻辑结构划分,可以将文件分成(流式文件)和记录式文件两大类。 计算机基础知识测试题全文共2页,当前为第2页。 28.按信息交换单位,I/O设备可以分为(字符型设备)和(块设备)。 计算机基础...

    TCP SOCKET用法小结v1.1.doc

    网络的 socket数据传输是一种特殊的I/O,socket也是一种文件描述符。socket也具有一个类似于打开文件的函数调用socket(),该函数返 回一个整型的socket描述符,随后的连接建立、数据传输等操作都是通过该socket实现...

    Windows内核探索和跟踪工具-Python开发

    Fibratus Fibratus是一个能够捕获大多数Windows内核活动的工具-进程/线程创建和终止,上下文切换,文件系统I / O,注册表,网络活动,DLL加载/卸载Fibratus Fibratus是一个工具,能够捕获大多数Windows内核活动-进程...

    linux网络编程socket框架总结

    网络的 Socket数据传输是一种特殊的I/O,Socket也是一种文件描述符。Socket也具有一个类似于打开文件的函数调用Socket(),该函数返 回一个整型的Socket描述符,随后的连接建立、数据传输等操作都是通过该Socket实现...

    Linux下Socket编程

    网络的socket数据传输是一种特殊的I/O,socket也是一种文件描述符。socket也具有一个类似于打开文件的函数调用socket(),该函数返回一个整型的socket描述符,随后的连接建立、数据传输等操作都是通过该socket实现的...

Global site tag (gtag.js) - Google Analytics