Java的输入与输出流(实验报告)
java输入输出流实验报告总结

java输入输出流实验报告总结Java输入输出流是Java中非常重要的概念,也是Java程序设计的基础。
在Java 程序中,输入输出流用于处理与设备之间的数据传输,例如键盘、鼠标、文件等。
Java的输入输出流主要包含两种类型:字节流和字符流。
字节流以字节为最小读写单位,而字符流以字符为最小读写单位。
Java的输入流有很多种类型,例如:InputStream、ByteArrayInputStream、FileInputStream等。
这些输入流的共同特点是读取外部数据到程序中。
Java的输出流也有多种类型,例如:OutputStream、ByteArrayOutputStream、FileOutputStream等。
这些输出流的共同特点是将程序中的数据输出到外部。
下面将以实验报告的形式进行总结,详细介绍Java输入输出流的原理和使用方法。
实验一:字节流输入输出1. 实验目的:掌握字节流输入输出的基本使用方法。
2. 实验内容:编写一个程序,实现从文件中读取数据,然后将数据输出到另一个文件中。
3. 实验步骤:a. 创建一个输入流对象,用于读取原始文件的数据。
b. 创建一个输出流对象,用于将读取到的数据输出到目标文件中。
c. 循环读取输入流中的数据,直到读取到文件末尾。
d. 将读取到的数据写入输出流中。
e. 关闭输入流和输出流。
4. 实验结果:成功读取原始文件中的数据,并将数据输出到目标文件中。
实验二:字符流输入输出1. 实验目的:掌握字符流输入输出的基本使用方法。
2. 实验内容:编写一个程序,实现从键盘输入文字,然后将文字输出到屏幕上。
3. 实验步骤:a. 创建一个字符输入流对象,用于读取键盘输入的文字。
b. 创建一个字符输出流对象,用于将读取到的文字输出到屏幕上。
c. 循环读取输入流中的文字,直到读取到换行符。
d. 将读取到的文字写入输出流中。
e. 关闭输入流和输出流。
4. 实验结果:成功从键盘输入文字,并将文字输出到屏幕上。
实验04Java输入输出流报告材料

实验四 Java 输入输出流1.实验目的(1) 掌握输入输出流的总体结构;(2) 掌握流的概念;(3) 了解各种流(包括文件流、过滤流、对象的序列化、随机访问)的使用。
2.实验内容实验题1 编写一个Java Application程序,打印命令行输入的所有参数。
[基本要求] 编写完整程序。
运行结果:代码如下:import java.util.Scanner;public class CommandOutPut {/*** @param args*/public static void main(String[] args) {// TODO Auto-generated method stubSystem.out.println("Please input :");Scanner in = new Scanner(System.in);String str = in.nextLine();System.out.println("The output results :");System.out.println(str);in.close();}}实验题2 通过键盘输入路径,搜索指定路径下的全部内容。
运行结果:代码如下:package .output;import java.io.File;import java.io.FileInputStream;import java.io.IOException;public class Output {/*** @param args* @throws IOException*/public static void main(String[] args) throws IOException { // TODO Auto-generated method stubString fileName = "d:\\xxx.txt";File file = new File(fileName);byte[] b=new byte[(int)file.length()];FileInputStream out=new FileInputStream(file);out.read(b);out.close();String s=new String(b);//将字节流转换为字符串System.out.println(s);}}实验题3设计一个类FileRWTest,实现从input.txt文件中读入数据到字符数组cBuffer中,然后再写入到文件“output.txt”中。
Java的输入与输出流(实验报告)

成都大学实验报告实验项目名称Java的输入与输出流一、实验目的:1. 理解I/O流的概念,掌握其分类2. 掌握文本文件读写、二进制文件读写二、实验内容(包括源程序及相关说明):1. 分别使用FileWriter 和BufferedWriter 往文件中写入10万个随机数,比较用时。
源代码如下:(1)import java.io.*;public class Ex1_1 {public static void main(String[] args) throws IOException{long t=System.currentTimeMillis();FileWriter fw =new FileWriter("d:\\Ex1.txt");for(int i=1;i<=100000;i++){fw.write((int)(Math.random()*10000)+" \n");}fw.close();t=System.currentTimeMillis()-t;System.out.println("The elapsed: "+t);}}(2)import java.io.*;public class Ex1_1 {public static void main(String[] args) throws IOException{long t=System.currentTimeMillis();BufferedWriter fw=new BufferedWriter(new FileWriter("d:\\Ex1.txt"));for(int i=1;i<=100000;i++){fw.write((int)(Math.random()*10000)+"\n");}fw.close();t=System.currentTimeMillis()-t;System.out.println("The elapsed: "+t);}}2. 生成一个html文件,使其能显示2的幂次(0~9)的表格如下:代码如下:import java.io.*;public class Ex1_1 {public static void main(String[] args) throws IOException{BufferedWriter bw=new BufferedWriter(new FileWriter("d:\\Ex2.html"));bw.write("<table border=1 align=center width=200 height=250>");bw.newLine();bw.write("<tr><td align=center>Power of 2<td align=center>Value</tr>");for(int i=0;i<=9;i++){bw.write("<tr><td align=center>"+i+"<td align=center>"+Math.pow(i, 2)+"</tr>");}bw.write("</table>");bw.newLine();bw.close();}}3. 在文本文件bigbook.txt中包含有很长篇幅的英语短文,编写程序要求统计文件的所有短文中包含英文字母“A”的个数,并显示统计的时间。
实验报告 Java输入、输出和异常处理

实验四Java输入、输出和异常处理一、实验目的1.了解I/O流的使用;2.掌握常见的输入/输出流类及其主要方法。
3.熟悉S y s t e m类,掌握标准输入/输出。
4.学会利用Tr y-c a t c h-f i n a l l y语句来捕获和处理异常;5.掌握自定义异常类的方法。
二、实验要求1.使用标准数据流的应用程序。
2.使用文件输入输出流的应用程序。
3.通过编程理解系统异常处理的机制和创建自定义异常的方法。
三、实验内容(一)使用标准数据流的应用程序标准数据流指在字符方式下(如D O S提示符)程序与系统进行输入输出的方式,键盘和显示器屏幕是标准输入输出设备,数据输入的起点为键盘,数据输出的终点是屏幕,输出的数据可以在屏幕上显示出来。
1.程序功能:将键盘上输入的字符在屏幕上显示出来。
2.编写S Y4_1.j a v a程序文件,源代码如下:c l a s s S Y4_1{p u b l i c s t a t i c v o i d m a i n(S t r i n g[]a rg s)t h r o w s j a v a.i o.I O E x c e p t i o n {b y t e b u ff e r[]=n e w b y t e[10];S y s t e m.o u t.p r i n t l n("从键盘输入不超过10个字符,按回车键结束输入:");i n t c o u n t=S y s t e m.i n.r e a d(b u f f e r);//读取输入的字符并存放在缓冲区b u ff e r中S y s t e m.o u t.p r i n t l n("保存在缓冲区b u ff e r中元素的个数为:"+c o u n t);S y s t e m.o u t.p r i n t l n("b u f f e r中各元素的值为:");f o r(i n t i=0;i<c o u n t;i++){S y s t e m.o u t.p r i n t(""+b u ff e r[i]);//在屏幕上显示b u ff e r 元素的值}S y s t e m.o u t.p r i n t l n();S y s t e m.o u t.p r i n t l n("输出b u ff e r字符元素:");S y s t e m.o u t.w r i t e(b u ff e r,0,b u f f e r.l e n g t h);}}3.编译、运行S Y4_1.j a v a文件。
java输入和输出实验报告

实验报告2013学年第 1 学期任课老师:课程名称Java语言与系统设计班级学号姓名实验名称实验三输入和输出实验时间实验环境PC/windows2000/2003/XP/Jcreator Pro/JBuild/JDK Eclipse/。
实验目的和内容要求实验3输入和输出1.实验目的了解流式输入输出的基本原理;掌握类File、FileInputStream、FileOutputStream的使用方法。
2.实验内容(1)编程:检查C:\WINDOWS\setuplog.txt文件是否存在,若在则显示该文件的名称和内容。
(2)编程:输入5个学生的信息(包含学号、姓名、3科成绩),统计各学生的总分,然后将学生信息和统计结果存入二进制数据文件STUDENT.DAT中。
(3)编程:从第(2)题中建立的STUDENT.DAT文件中读取数据,寻找平均分最高的学生,并输出该学生的所有信息。
3.实验要求编程时,应考虑异常处理。
实验过程记录(学生写出实验步骤及中间的结果与现象,在实验中做了什么,怎么做,发生的现象和中间结果)1.先分析题意,想好大概思路,然后按照功能划分建立几个类。
2.第一个建立的类,命名为Check用于判断该目录下文件夹是否存在,存在则输出该文件的内容,否则返回false。
3.第二个建立的Student类,成员变量主要有姓名、学号、语文成绩、数学成绩、英语成绩,以及总分,构造与此相关的set和get方法,与重载的构造方法来赋值。
4.第三个建立的是StudentInfo类,用于输入学生信息,并将其存储于STUDENT.DAT文件中,然后读取其中内容,判断后把总分最高的学生信息输出。
5.实验思路分析完成后实验进行并不顺利,经常丢三落四,找同学帮忙抓bug才勉强完成,但最后在自己电脑上完成时却一直没有像别人一样输出文件名称和内容,最后才发现是自己的电脑中没有那个文件。
实验结果分析与总结程序运行结果(请提供所完成的各道题运行结果界面截图):(1)(制作了一个相应文件后检测到的截图)(2)指导老师评阅意见指导老师:年月日填写内容时,可把表格扩大。
Java输入与输出实验报告

实验报告课程名称: Java语言程序设计姓名:学号:班级:数学与计算机科学学院数学与计算机科学学院实验报告实验名称:输入与输出指导教师:日期:}private static void writeFile() throws Exception{String s;while(true){System.out.println("输入字符串:");System.out.flush();s=keyread.readLine();if(s.length()==0) break;bwrite.write(s);bwrite.newLine();}}public static void main(String args[]) throws Exception{String filename="E:\\project_java\\src\\file";file=new File(filename);if(!file.exists()){System.out.println("文件不存在");return;}fwrite=new FileWriter(file);bwrite=new BufferedWriter(fwrite);keyread=new BufferedReader(new InputStreamReader(System.in));writeFile();keyread.close();bwrite.close();fread=new FileReader(file);bread=new BufferedReader(fread);readFile();bread.close();}}第2题代码:import java.io.*;public class MyFile{public static void main(String args[]) throws IOException {String filename="E:\\project_java\\src\\file";File file=new File(filename);if(!file.exists()){System.out.println("文件不存在");return;}FileReader fread=new FileReader(file);BufferedReader bread=new BufferedReader(fread);String s=bread.readLine();while(s!=null) {System.out.println(s);s=bread.readLine();}fread.close();System.out.println("文件路径:"+file.getAbsolutePath());System.out.println("修改时间:"+stModified());System.out.println("文件长度:"+file.length());System.out.println("文件可读:"+file.canRead());System.out.println("文件可写:"+file.canWrite());}}实验结果第1题:第2题:。
实验04_Java输入输出流报告

实验四Java 输入输出流import java.util.Scanner;public class CommandOutPut {/*** @param args*/public static void main(String[] args) {// TODO Auto-generated method stubSystem.out.println("Please input :");Scanner in = new Scanner(System.in);String str = in.nextLine();System.out.println("The output results :");System.out.println(str);in.close();}}实验题2 通过键盘输入路径,搜索指定路径下的全部内容。
package .jp;import java.io.BufferedReader;import java.io.File;import java.io.IOException;import java.io.InputStreamReader;public class alldir {public static void main(String[] args)throws IOException { // TODO Auto-generated method stub//打印指定路径下所有的文件String path = null;System.out.println("please input path: ");BufferedReader in = null;in = new BufferedReader(new InputStreamReader(System.in));path=in.readLine();File file = new File(path);System.out.println(path+"路径下的所有文件如下:\n");File[] allfile = file.listFiles();for(File f : allfile)System.out.println(f.getName());}}实验题3设计一个类FileRWTest,实现从input.txt文件中读入数据到字符数组cBuffer中,然后再写入到文件“output.txt”中。
实验5:java输入输出流

实验五:输入输出流实验说明:本实验简单的实现了用户数据写入文本文档的功能,运行程序后,通过从命令行输入账号和密码进行注册,然后在进行登录。
运行结果:源代码:import java.io.*;import java.util.*;public class StreamDemo {public void write()throws IOException {FileWriter fw = new FileWriter("C:\\ZM.txt"); //在C 盘新建文本文档BufferedWriter bw = new BufferedWriter(fw);System.out.println("》》》》》注册《《《《《");System.out.print("请输入帐号:");BufferedReader br1 = new BufferedReader(new InputStreamReader(System.in));String ID = br1.readLine();bw.write("帐号:"); //向文本文档中写入字符串bw.write(ID); //向文本文档中写入账号bw.newLine(); //在文本文档中换行System.out.print("请输入密码:");BufferedReader br2 = new BufferedReader(new InputStreamReader(System.in));String PWD = br2.readLine();bw.write("密码:"); //向文本文档中写入字符串bw.write(PWD); //向文本文档中写入账号bw.flush(); //在文本文档中换行System.out.println("帐号和密码已经写入文件");System.out.println("》》》》》登录《《《《《");Scanner sc = new Scanner(System.in);System.out.print("请输入帐号:");String id = sc.next();System.out.print("请输入密码:");String pwd = sc.next();if(id.equals(ID)&pwd.equals(PWD)){ //讲输入的账号和密码与文本文档中的进行比对System.out.println("登录成功!");}else{System.out.println("你输入的帐号或密码有问题,请重新输入!");}/*关闭输入输出流*/br2.close();br1.close();bw.close();fw.close();}public static void main(String[] args) {StreamDemo t = new StreamDemo();try {t.write();} catch (IOException e) {e.printStackTrace();}}}。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
成都大学实验报告
实验项目名称Java的输入与输出流
一、实验目的:
1、理解I/O流的概念,掌握其分类
2、掌握文本文件读写、二进制文件读写
二、实验内容(包括源程序及相关说明):
1、分别使用与BufferedWriter 往文件中写入10万个随机数,比较用时。
源代码如下:
(1)
import java、io、*;
public class Ex1_1 {
public static void main(String[] args) throws IOException{ long t=System、currentTimeMillis();
fw =new ("d:\\Ex1、txt");
for(int i=1;i<=100000;i++)
{
fw、write((int)(Math、random()*10000)+" \n");
}
fw、close();
t=System、currentTimeMillis()-t;
System、out、println("The elapsed: "+t);
}
}
(2)
import java、io、*;
public class Ex1_1 {
public static void main(String[] args) throws IOException{ long t=System、currentTimeMillis();
BufferedWriter fw=new BufferedWriter(new ("d:\\Ex1、txt"));
for(int i=1;i<=100000;i++){
fw、write((int)(Math、random()*10000)+"\n");
}
fw、close();
t=System、currentTimeMillis()-t;
System、out、println("The elapsed: "+t);
}
}
2、生成一个html文件,使其能显示2的幂次(0~9)的表格如下:
代码如下:
import java、io、*;
public class Ex1_1 {
public static void main(String[] args) throws IOException{ BufferedWriter bw=new BufferedWriter(new ("d:\\Ex2、html"));
bw、write("<table border=1 align=center width=200 height=250>");
bw、newLine();
bw、write("<tr><td align=center>Power of 2<td
align=center>Value</tr>");
for(int i=0;i<=9;i++){
bw、write("<tr><td align=center>"+i+"<td align=center>"+Math、pow(i, 2)+"</tr>");
}
bw、write("</table>");
bw、newLine();
bw、close();
}
}
3、在文本文件bigbook、txt中包含有很长篇幅的英语短文,编写程序要求统计文件的所有短文中包含英文字母“A”的个数,并显示统计的时间。
第一种实现方法
代码如下:
import java、io、;
import java、io、IOException;
public class EXP1_1 {
public static void main(String[] args) throws IOException{ long t =System、currentTimeMillis();
String "D:\\bigbook、txt";
fis=new ();
int count=0;
int c;
while((c=fis、read())!=-1){
if(c=='A'){
count++;
}
}
fis、close();
System、out、println(count);
t=System、currentTimeMillis()-t;
System、out、println("Tim elapsed:"+t);
}
}
第二种方法
代码如下:
import java、io、;
import java、io、IOException;
import java、io、BufferedInputStream;
public class EXP1_1 {
public static void main(String[] args) throws IOException{ long t =System、currentTimeMillis();
String "D:\\bigbook、txt";
fis=new ();
BufferedInputStream bis=new BufferedInputStream(fis);
int count=0;
int c;
while((c=bis、read())!=-1){
if(c=='A'){
count++;
}
}
fis、close();
System、out、println(count);
t=System、currentTimeMillis()-t;
System、out、println("Tim elapsed:"+t);
}
}
三、实验结果:
1、
2、
3、
4、
5、
四、实验小结与建议:
1、初步理解I/O流的概念,掌握其分类。
2、掌握文本文件读写、二进制文件读写。
成都大学信息科学与技术学院制。