java教程流式输入输出与文件处理

java教程流式输入输出与文件处理

ID:34723815

大小:104.01 KB

页数:14页

时间:2019-03-10

java教程流式输入输出与文件处理_第1页
java教程流式输入输出与文件处理_第2页
java教程流式输入输出与文件处理_第3页
java教程流式输入输出与文件处理_第4页
java教程流式输入输出与文件处理_第5页
资源描述:

《java教程流式输入输出与文件处理》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、一、输入/输出的基本概念(1)输入/输出设备与文件外部设备:①存储设备:硬盘、光盘、U盘等。②输入输出设备:鼠标、键盘、扫描仪、显示器、打印机、绘图仪等。文件:①输入输出设备可以看成是一类特殊的文件;②文件可以看成是字节的序列;③文件分为文本文件和二进制文件,文本文件存放的是ASCII码(或其他编码)表示的字符,而二进制文件是具有特定结构的数据。(2)流的概念Java中的输入/输出是以流的方式来处理的。流是在计算机的输入/输出操作中流动的数据系列。流中有未经加工的二进制数据,也有特定格式的数据。★流的分类:①输入流和输出流;②字节流和字符流。★流的特点:①先进先出。先被写入的数据,在读取时先被

2、读取;②顺序存取。不能随机访问中间的数据;③只读或只写。要么是输出流,要么是输入流。★针对一些频繁的设备交互,Java系统预先定义了3个可以直接使用:①标准输入(System.in):InputStream类型,通常代表键盘的输入;②标准输出(System.out):PrintStream类型,通常写往显示器;③标准错误输出(System.err):PrintStream类型,通常写往显示器。★可以使用下面的方法对流对象进行重定向:①staticvoidsetIn(InputStreamin):重新定义标准输入流;②staticvoidsetErr(PrintStreamerr):重新定义标准

3、错误输出;③staticvoidsetout(PrintStreamout):重新定义标准输出。二、面向字节的输入/输出流(1)面向字节的输入流★面向字节的输入流都是InputStream的子类,此类为抽象类,类中定义了多个方法:①publicintread():读取一个字节;②publicintread(byte[]b):读多个字节到字节数组;③publicintread(byte[]b,intoff,intlen):从输入流读指定长度的数据到字节数组,数组从字节数组的off处开始存放;④publiclongskip(longn):指针跳过n个字节;⑤publicvoidmark():在当前

4、位置指针处做一标记;⑥publicvoidreset():将位置指针返回标记处;⑦publicvoidclose():关闭流。★使用InputStream类的子类①文件输入流(FileInputStream)例题:9.1在屏幕上显示文件内容importjava.io.*;publicclassDisplayFile{    publicstaticvoidmain(String[]args){          try{          FileInputStreaminfile=newFileInputStream(args[0]);            intbyteRead=infi

5、le.read();          while(byteRead!=-1){              System.out.print((char)byteRead);                byteRead=infile.read();          }          }          catch(ArrayIndexOutOfBoundsExceptione){          System.out.println("需要提供一个文件名作为命令行参数");          }          catch(FileNotFoundExceptione){   

6、       System.out.println("filenotfind!");          }          catch(IOExceptione){}    }}改进此程序:每次读入多个字节。importjava.io.*;publicclassDisplayFile2{    publicstaticvoidmain(String[]args){          try{          FileInputStreaminfile=newFileInputStream(args[0]);          byteb[]=newbyte[100];          i

7、ntbyteRead=0;          while((byteRead=infile.read(b))!=-1){                Strings=newString(b);              System.out.print(s);          }          }          catch(ArrayIndexOutOfBoundsExceptione

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。