永利最大(官方)网站

Java教程:IO输入输出操作方法

原创|其它|编辑:郝浩|2009-05-27 11:29:41.000|阅读 882 次

概述:数据流是指所有的数据通信通道。在java中有关流的操作使用java.io.*,出于安全的考虑,小应用不能实现文件I/O流。本文介绍了IO输入输出操作方法。

#慧都22周年庆大促·界面/图表报表/文档/IDE/IOT/测试等千款热门软控件火热促销中>>

  数据流:数据流是指所有的数据通信通道。在java中有关流的操作使用java.io.*,出于安全的考虑,小应用不能实现文件I/O流。

  标准输入输出:System类管理标准输入输出流和错误流

  System.out:把输出送到缺省的显示(通常是显示器)

  System.in:从标准输入获取输入(通常是键盘)

  System.err:把错误信息送到缺省的显示

  System.in:属于BufferedInputStream类型

  System.out:属于PrintStream类型 (String)

  System.err:属于PrintStream类型

  每当main方法被执行时,就自动生成上述三个对象

  输入流输出流基类:InputStream和OutputStream

  抽象类,不能直接使用

  InputStream类的方法:

  read():从流中读入数据

  skip():跳过流中若干字节数

  available():返回流中可用字节数

  mark():在流中标记一个位置

  reset():返回标记过得位置

  markSupport():是否支持标记和复位操作

  close():关闭流。

  OutputStream类的方法:

  write(int b):将一个整数输出到流中

  write(byte b[]):将数组中的数据输出到流中

  write(byte b[], int off,int len):将数组b中从off指定的位置开始len长度的数据输出到流中

  flush():将缓冲区中的数据强制送出

  close():关闭流。

  PrintStream类

  println()不属于OutputStream类,它是PrintStream类的子类,能提供复杂的输出

  PrintStream类的方法有:write、flush、checkError、print、println、close。

  其中println可以输出多种形式的数据。例如:

  println(String s),println(char c)等

  FILE IO

  1、文件对象的建立

  File fp=new File(“tempfile.txt”);

  对文件操作要定义文件流

  FileInputStream类用来打开一个输入文件

  FileOutputStream类用来打开一个输出文件

  2、文件流的建立

  FileInputStream in=new FileInputStream(fp);

  FileOutputStream out=new FileOutputStream(fp);

  3、增加缓冲区流,减少访问硬盘的次数,提高效率

  BufferedInputStream和BufferedOutputStream,将它们与文件流相接

  FileInputStream in=new FileInputStream(“file1.txt”);

  BufferedInputStream bin= new BufferedInputStream(in,256);

  只有缓冲区满时,才会将数据送到输出流。

  Java在输出数据流中,当对方尚未将数据取走时,程序就会被阻塞。

  有时要人为地将尚未填满的缓冲区中的数据送出,使用flush()方法

  数据输入输出流:DataInputStream、DataOutputStream

  除了字节和字节数组,还可以处理int、float、boolean等类型。

  还可以用readLine方法读取一行信息

  可使用的方法:

  write,writeBoolean,read,readByte等

  数据流的建立

  FileInputStream fos= new FileInputStream(”file2.txt"));

  DataInputStream dis= new DataInputStream(fos)

  数据输出流可以是一个已经建立好的输入数据流对象,例如网络的连结,文件等。

  类RandomAccessFile

  RandomAccessFile是处理本地文件的类

  zip文件需要用随机方法处理

  文件目录给出个文件的入口,可以随机读取。

  创建一个随机文件

  new RandomAccessFile(file1.txt, r);

  new RandomAccessFile(file2.txt, rw);

  随机文件可以同时完成读和写操作。

  支持随机文件操作的方法:

  readXXX()或writeXXX()

  skipBytes():将指针乡下移动若干字节

  seek():将指针调到所需位置

  getFilePointer():返回指针当前位置

  length():返回文件长度

  利用seek(long pos)方法查找随机文件中的信息

  其他操作

  使用文件类获取文件的路径信息

  设f是一个文件对象

  File f=new File(“data”,temp.dat”);

  f.getName():返回文件名 temp.dat

  f.getParent():返回文件所在目录名 data

  f.getPath():返回文件路径 datatemp.dat

  f.getAbsolutePath():返回绝对路径

  unicode

  在java中用unicode 表示字符和字符串

  DatainputStream的readLine方法, 以字节形式读入,以unicode形式输出

  DataInputStream不适合输入是unicode的形式

  处理字符用InputStreamReader 类和BufferedReader类(jdk1.1)

  管道流

  创建管道流

  管道流一定是输入输出并用

  例:将数据从输出管道进,从输入管道出

  PipedInputStream pis=new PipedInputStream();

  PipedOutputStream pos=new PipedOutputStream(pis);

  对象流

  在java.io包中什么是对象的持续性?

  能够纪录自己的状态一边将来再生的能力,叫对象的持续性

  什么是串行化?

  对象通过写出描述自己状态的的数值来记录自己的过程叫串行化。

  什么是对象流?

  能够输入输出对象的流.

  两者什么关系?

  将串行化的对象通过对象输入输出流写入文件或传送到其它地方。

  相应的类:ObjectInput

  对象的输出:ObjectOutputStream

  相应的方法:writeObject()

  对象的输入:ObjectInputStream

  相应的方法:readObject()


标签:

本站文章除注明转载外,均为本站原创或翻译。欢迎任何形式的转载,但请务必注明出处、不得修改原文相关链接,如果存在内容上的异议请邮件反馈至chenjj@hmdbvip.cn

文章转载自:IT专家网论坛

为你推荐

  • 推荐视频
  • 推荐活动
  • 推荐产品
  • 推荐文章
  • 慧都慧问
扫码咨询


添加微信 立即咨询

电话咨询

客服热线
023-68661681

TOP
PM娱乐城网络现金网站(官方)网站/网页版登录入口/手机版登录入口-最新版(已更新) PM娱乐城最大(官方)网站/网页版登录入口/手机版登录入口-最新版(已更新) 永利外围最新(官方)网站/网页版登录入口/手机版登录入口-最新版(已更新) 网络权威朗驰娱乐大全(官方)网站/网页版登录入口/手机版登录入口-最新版(已更新) 永利真人网上足球(官方)网站/网页版登录入口/手机版登录入口-最新版(已更新) 利记最火十大网(官方)网站/网页版登录入口/手机版登录入口-最新版(已更新) boyu·博鱼权威网络足球(官方)网站/网页版登录入口/手机版登录入口-最新版(已更新) PM娱乐城网上足球(官方)网站/网页版登录入口/手机版登录入口-最新版(已更新)