欢迎来到天天文库
浏览记录
ID:39968968
大小:1.13 MB
页数:28页
时间:2019-07-16
《java程序设计——07输入输出流》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、计算机科学与技术学院赵志崑zhaozk@sdufe.edu.cnJava程序设计Java程序的输入输出以一个小应用为例,介绍Java的输入输出机制。小应用需求分析需要实现的功能点Java中的实现方法具体代码总结与扩展随机点名器功能:设计开发一个Java程序,每节课可以随机抽取几名同学点名,达到随机点名的目的。数据来源:教务系统提供的学生名单(文本文件)Java程序显示到屏幕保存到文件随机选出10个学生程序流程与要点文本文件屏幕打印学生名单(内存)选中名单(内存)随机选择1读文件2存数据3随机选4写文件学生名单选中名单选中名单文本文件随
2、机点名器要点一:读文件Java中文件以流(Stream)的方式读写,将程序的输入输出看作是数据的流动,一个流是一个字节的序列。流的使用不局限于文件读写,还可用于网络传输、键盘输入、屏幕输出等和程序输入输出有关的一切活动。根据用途,Java中提供了几十种流,类库中为每一种流提供一个类,用于创建流(对象)。读文件流用于读文本文件内容的流是FileReader,主要方法:FileReader(Stringfilename):构造函数,创建流。intread():读一个字节,若读到文件结尾返回-1。voidclose():关闭流。FileRe
3、aderfr=newFileReader(“Students.txt”);intd=fr.read();fr.close();FileReader20-1学生数据读入从文件students.txt中读入学生数据。//Selector.javaimportjava.io.*;publicclassSelector{publicstaticvoidmain(String[]args)throwsException{FileReaderfr=newFileReader("Students.txt");intc=fr.read();while
4、(c!=-1){System.out.print((char)c);c=fr.read();}fr.close();}}说明:文件Students.txt必须放在同一个目录下。必须在主函数声明处加入“throwsException”将异常全部交给虚拟机处理以字符为单位处理数据??按行读取BufferedReader类能实现按行读取的功能,主要方法:BufferedReader(Readerreader):构造函数,创建流。StringreadLine():读一行字符,若读到文件结尾返回null。voidclose():关闭流。Buff
5、eredReaderFileReader字符字符串20080854101伦永涛2008计算机科学与技术1BufferedReaderbr=newBufferedReader(fr);Strings=br.readLine();br.close();null按行读取数据的代码按行读取学生数据的代码如下://Selector.javaimportjava.io.*;publicclassSelector{publicstaticvoidmain(String[]args)throwsException{FileReaderfr=newFi
6、leReader("Students.txt");BufferedReaderbr=newBufferedReader(fr);Strings=br.readLine();while(s!=null){System.out.println(s);s=br.readLine();}br.close();fr.close();}}BufferedReaderFileReader文件流的嵌套要点二:数据存放从文件读入的数据是一个个字符串,如何在程序中存放?20080854101伦永涛……20080854102王楚尧……20080854103
7、李燕……用数组来保存批量数据创建一个字符串数组,将读入的数据依次放入用一个整数型变量记录数据个数,并作为空闲位置的指针String[]students=newString[100];intcount=0;students[count]=s;count++;[0][1][2][3][4][…][…][98][99]students0count123数据存放的代码加入数据存放后的代码如下://Selector.javaimportjava.io.*;publicclassSelector{publicstaticvoidmain(Stri
8、ng[]args)throwsException{String[]students=newString[100];intcount=0;FileReaderfr=newFileReader("Students.txt")
此文档下载收益归作者所有