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

合集下载

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输入输出流报告材料

实验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的输入与输出流(实验报告)

成都大学实验报告实验项目名称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输入、输出和异常处理

实验四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输入和输出实验报告

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输入与输出实验报告

实验报告课程名称: 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输入输出流报告

实验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输入输出流

实验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();}}}。

JAVA实验报告

JAVA实验报告

JAVA实验报告一、实验目的本次 Java 实验的主要目的是通过实际编程操作,深入理解 Java 语言的基本语法、面向对象编程的概念以及常用类库的使用。

同时,培养自己解决实际问题的能力,提高编程的熟练程度和代码质量。

二、实验环境操作系统:Windows 10开发工具:EclipseJDK 版本:18三、实验内容及步骤(一)基本语法练习1、数据类型与变量定义不同类型的变量,如整数型(int)、浮点数型(float、double)、字符型(char)和字符串型(String),并进行赋值和输出操作。

了解不同数据类型的取值范围和精度,以及在实际编程中的应用场景。

2、控制结构编写使用 ifelse 语句、switch 语句进行条件判断的程序。

运用 for 循环、while 循环和 dowhile 循环实现重复执行的操作。

3、数组与字符串声明和初始化一维数组和二维数组,对数组元素进行访问和操作。

进行字符串的拼接、截取、查找等常见操作。

(二)面向对象编程实践1、类与对象定义一个简单的类,包含属性和方法。

创建该类的对象,并调用对象的方法来操作属性。

2、继承与多态建立父类和子类,实现继承关系。

在子类中重写父类的方法,展示多态性。

3、封装与抽象将类的属性设置为私有,并提供公共的访问方法(getter 和 setter),实现封装。

定义抽象类和抽象方法,体会抽象的概念和作用。

(三)常用类库的使用1、 Java 输入输出(IO)使用 Scanner 类实现从控制台读取用户输入的数据。

运用 File 类和相关的输入输出流类,实现文件的读取和写入操作。

2、集合框架熟悉 ArrayList、LinkedList 等线性集合的使用方法。

了解 HashSet、TreeSet 等集合的特点和应用场景。

3、异常处理在程序中加入可能引发异常的代码段,并使用 trycatch 语句捕获和处理异常。

四、实验结果与分析(一)基本语法练习1、数据类型与变量成功定义了各种数据类型的变量,并正确进行了赋值和输出。

java输入输出流实验报告总结】

java输入输出流实验报告总结】

java输入输出流实验报告总结】Java输入输出流实验报告总结在本次实验中,我们学习了Java的输入输出流的概念和用法。

输入输出流是Java中用于处理输入和输出操作的工具。

通过输入流,我们可以将外部数据输入到程序中进行处理,通过输出流,我们可以将程序中的数据输出到外部文件或设备上。

在本次实验中,我们通过几个具体的示例来探索输入输出流的不同用法和特性,以期更好地理解和掌握它们的使用。

首先,我们学习了如何使用FileInputStream和FileOutputStream这两个类来进行字节流的输入和输出操作。

这两个类分别用于从指定文件中读取字节数据和将字节数据写入到指定文件中。

通过这两个类,我们可以实现文件的拷贝、移动、创建等功能。

同时,我们还了解了如何使用BufferedInputStream和BufferedOutputStream这两个类来提高读写效率。

这两个类可以通过缓存数据来减少对底层系统的IO操作次数,从而提高读写速度。

接下来,我们学习了如何使用FileReader和FileWriter这两个类进行字符流的输入和输出操作。

这两个类与字节流的输入输出类似,但它们处理的是字符数据。

通过这两个类,我们可以读取和写入文本文件中的字符数据。

我们还了解了字符编码和字符集的概念,并学习了如何使用InputStreamReader和OutputStreamWriter来进行字符流和字节流之间的转换。

除了字节流和字符流,我们还学习了对象流的使用。

对象流可以将Java 对象直接写入到文件中,也可以从文件中读取Java对象。

这在处理一些复杂的对象数据时非常有用。

我们通过使用ObjectInputStream和ObjectOutputStream这两个类,实现了对象的读写操作。

需要注意的是,被写入和读取的对象必须实现Serializable接口,否则会抛出NotSerializableException异常。

在实验过程中,我们还探索了如何使用标准输入输出流。

Java 数据的输入和输出 -实验报告

Java 数据的输入和输出 -实验报告
实验二数据的输入和输出
一、实验项目名称
数据的输入和输出
二、实验目的
(1)了解JAVA应用的开发
(2)了解IntelliJ IDEA软件的开发
(3)学习和掌握标准输入和输出
(4)初步掌握JavaFx开发GUI应用
三、实验环境
1.Window 11
2.JDK-17
3.Intellij IDEA
四、实验步骤
/**
*猜拳游戏
* @author熊廷杨
*/
import javafx.application.Application;
import javafx.scene.control.Alert;
import javafx.scene.control.TextInputDialog;
import javafx.stage.Stage;
System.out.println(" \uD834\uDF07 \uD834\uDF07\uD834\uDF07\uD834\uDF07 \uD834\uDF07 \uD834\uDF07 \uD834\uDF07\uD834\uDF07\uD834\uDF07");
System.out.println("\uD834\uDF07\uD834\uDF07 \uD834\uDF07 \uD834\uDF07 \uD834\uDF07 \uD834\uDF07 \uD834\uDF07");
(2)IntelliJ IDEA配置JavaFx
参考实验课程的网络教学平台的“章节”-》“1.5IntelliJ IDEA开发Javafx应用”的实验指导(一)、(二)步加载JavaFx库到模块中。
测试代码:

java实验七 输入输出流

java实验七   输入输出流

实验七输入输出流一.实验目的和要求目的:1、掌握使用输入输出流进行文件的读写操作。

要求:1、实验报告给出内容1,2的填充代码以及内容3的全部源代码。

二.实验内容1、按程序模板要求,将注释处替换为Java程序代码。

实现文件加密。

2、按程序模板要求,将注释处替换为Java程序代码。

给文件的内容添加行号.3、串行化对象Student到本地文件,并在下一次运行程序时用来初始化。

(选做)三.实验环境硬件:(1)学生用微机(2)多媒体实验教室软件:(1)Windows XP中文操作系统(2)JDK控制台四.算法描述及实验步骤实验步骤:1、按程序模板要求,将注释处替换为Java程序代码该程序将已存在的文本文件加密后存入另一个文本文件中。

请按模板要求,将【代码1】~【代码6】替换为Java程序代码SecretExample.javaimport java.io.*;public class SecretExample{public static void main(String args[ ]){File fileOne=new File("hello.txt"),fileTwo=new File("hello.secret");char b[]=new char[100];try{FileReader in=【代码1】 // 创建指向fileOne的字符输入流FileWriter out=【代码2】 // 创建指向fileTwo字符输出流int n=-1;while((n=in.read(b))!=-1){for(int i=0;i<n;i++){b[i]=(char)(b[i]^'a');}【代码3】 // out将数组b的前n单元写到文件 }【代码3】 // out关闭in=【代码4】 // 创建指向fileTwo的字符输入流System.out.println("加密后的文件内容:");while((n=in.read(b))!=-1){String str=new String(b,0,n);System.out.println(str);}in=【代码5】 // 创建指向fileTwo的字符输入流System.out.println("解密后的文件内容:");while((n=in.read(b))!=-1){for(int i=0;i<n;i++){b[i]=(char)(b[i]^'a');}System.out.printf(new String(b,0,n));}【代码6】 // in关闭}catch(IOException e){System.out.println(e);}}}2、按模板要求,将【代码1】~【代码14】替换为Java程序代码。

Java输入输出流实验

Java输入输出流实验

实验十二输入输出流【实验目的】1.掌握Java常用类的使用方法;2.掌握输入输出流的使用;【实验内容】一、在实验五的基础上,将产生的报表写入到指定的文本文件。

提示:使用BufferedWriter类BufferedWriter bw=new BufferedWriter(new FileWriter("1.txt"));bw.write("..");bw.newLine();【测试类代码】二、在记事本中输入一些字符串(每行一个字符串),存盘。

编写程序从这个文件中读取所有的字符串,对这些字符串进行排序,最后把结果写入另一个文件中。

提示:使用BufferedReader和BufferedWriter类进行文件读写;因为文件行数未知,可以使用ArrayList来保存字符串对象;最后使用Arrays类进行排序。

【代码】从输入流(键盘)可以得到一批矢量的数据,计算矢量的大小(x^2+y^2+z^2的平方和),然后按照从大到小的顺序输出输入:若干组数据。

每组数据由3个整数组成,分别代表xyz方向的大小;每组数据之间用分号分隔,坐标之间用逗号分隔。

测试用例仅有一行!输出:每行有表示大小的序号No.n,后跟一个空格,然后是形如(x,y,z)的矢量表示Sample Input:1,2,3;4,5,6;7,8,9Sample Output:No.1 (7,8,9)No.2 (4,5,6)No.3 (1,2,3)提示:使用BufferedReader进行输入,使用字符串的Split方法进行分割,使用包装类进行数据转换。

比较好的方法是定义一个三维坐标系中点的类,并实现toString和compareTo方法,最后使用Arrays排序。

【代码】。

java输入输出实验报告

java输入输出实验报告

java输入输出实验报告Java输入输出实验报告引言:Java是一种广泛应用的编程语言,其输入输出(Input/Output,简称I/O)功能对于程序的交互和数据处理至关重要。

本实验旨在通过实际操作,探索Java中的输入输出机制,并深入了解其原理和应用。

一、实验目的通过本次实验,我们的目标是:1. 理解Java中的输入输出概念和基本原理;2. 掌握Java中的标准输入输出流(System.in和System.out)的使用;3. 学会使用Java中的文件输入输出流,实现对文件的读写操作;4. 熟悉Java中的异常处理机制,处理输入输出过程中的异常情况。

二、实验环境本次实验所需的环境和工具如下:1. Java开发工具(如Eclipse、IntelliJ IDEA等);2. 一台配置良好的计算机。

三、实验过程1. 标准输入输出流的使用在Java中,标准输入流(System.in)用于接收用户的输入,标准输出流(System.out)用于向屏幕输出信息。

我们可以通过Scanner类来实现对标准输入流的读取,通过System.out.println()方法实现对标准输出流的输出。

下面是一个示例代码:```javaimport java.util.Scanner;public class StandardIOExample {public static void main(String[] args) {Scanner scanner = new Scanner(System.in);System.out.print("请输入您的姓名:");String name = scanner.nextLine();System.out.println("您好," + name + "!欢迎使用Java输入输出功能。

"); }}```2. 文件输入输出流的使用除了标准输入输出流,Java还提供了FileInputStream和FileOutputStream类,用于实现对文件的读写操作。

java 实验六 输入输出 实验报告

java 实验六 输入输出 实验报告

实验六输入输出实验目标:1. 理解I/O流的概念与机制,掌握其分类;2. 掌握文本文件的读写、二进制文件的读写、处理流类的概念和用法、对象序列化;3. 掌握File类,压缩流类和RandomAccessFile类的使用;4. 遇到I/O方面的问题,能够自行查阅API稳当解决。

实验任务:1、课本198页习题2,并使用这个程序来copy自己硬盘的大文件(任何格式都可以,如电影,最好大于500MB),看看需时多少?提示:首先需要看懂课本文本文件例子,再模仿修改,关键不同在下面三点。

(1)文本文件复制中是每次读一行,而在二进制文件复制中是自行指定读取多少字节的数据,写法如下。

private boolean copyFiles() { //这个私有方法用来拷贝文件,如无异常返回true try {byte[] buf = new byte[512];int num = source.read(buf); //从源文件读取数据while (num > 0) { // 只要能够读取数据,就继续读dest.write(buf, 0, num); //向目标文件写入num = source.read(buf); //从源文件读取数据}}catch (IOException iox) {System.out.println("Problem reading or writing");return false;}return true;}-------------------以上请注意byte[] buf = new byte[512],说明每次只读512字节,请更换每次读取的缓冲字节数,比如byte[] buf = new byte[5120],每次读5mb左右,请试试copy 效率回有所提高吗?请截图回答。

(2)需时多少可以通过CPU时钟计算,方法见下。

Calendar start=Calendar.getInstance();new BinaryFileCopy().copy(args[0], args[1]);Calendar end=Calendar.getInstance();long time=end.getTimeInMillis()-start.getTimeInMillis();System.out.println("copy时间为"+time+"毫秒");(3)因为这个程序执行需要输入参数的,所以在eclipse里面不能直接执行的,要到dos界面去执行,这里命令行的写法就有点讲究了。

java输入输出实验报告

java输入输出实验报告

java输入输出实验报告《Java输入输出实验报告》摘要:本实验主要通过使用Java编程语言进行输入输出实验,通过实验对Java的输入输出功能进行了深入了解和学习。

实验结果表明,Java具有强大的输入输出功能,能够满足不同场景下的输入输出需求。

一、实验目的1. 了解Java的输入输出功能2. 掌握Java中输入输出的基本方法和技巧3. 熟练运用Java输入输出进行实际编程二、实验内容1. 使用Java的标准输入输出流进行输入输出操作2. 使用Java的文件输入输出流进行文件的读写操作3. 使用Java的网络输入输出流进行网络数据的读写操作三、实验步骤1. 编写Java程序,使用标准输入输出流进行简单的输入输出操作2. 编写Java程序,使用文件输入输出流进行文件的读写操作3. 编写Java程序,使用网络输入输出流进行网络数据的读写操作四、实验结果1. 使用标准输入输出流进行输入输出操作的程序能够正常运行,能够实现对用户输入的数据进行输出并进行相应的处理。

2. 使用文件输入输出流进行文件的读写操作的程序能够正常运行,能够实现对文件的读取和写入操作。

3. 使用网络输入输出流进行网络数据的读写操作的程序能够正常运行,能够实现对网络数据的读取和写入操作。

五、实验总结通过本次实验,我对Java的输入输出功能有了更深入的了解和掌握。

Java具有丰富的输入输出功能,能够满足不同场景下的输入输出需求。

同时,我也学会了如何使用Java进行标准输入输出、文件输入输出和网络输入输出的操作,这些知识对我今后的编程工作将会有很大的帮助。

六、实验感想本次实验让我对Java的输入输出功能有了更深入的了解,也让我对Java编程语言有了更深的认识。

通过实验,我不仅学会了如何使用Java进行输入输出操作,还学会了如何处理各种输入输出异常情况,这对我今后的编程学习和工作都将会有很大的帮助。

希望今后能够继续深入学习Java编程,提升自己的编程能力。

1java掌握字符输入、输入输出流以及缓冲输入、输出的使用方法的实验总结

1java掌握字符输入、输入输出流以及缓冲输入、输出的使用方法的实验总结

1java掌握字符输入、输入输出流以及缓冲输入、输出的使用方法的实验总结在Java中,我们可以使用字符输入流和输出流来读写字符数据。

而缓冲输入流和输出流是在字符流的基础上增加了缓冲功能,可以提高读写的效率。

字符输入流的常用类有FileReader和InputStreamReader。

FileReader可以用于读取文件中的字符数据,InputStreamReader可以用于读取字节流转换成字符流。

字符输出流的常用类有FileWriter和OutputStreamWriter。

FileWriter可以用于将字符数据写入文件,OutputStreamWriter 可以用于将字符流转换成字节流。

缓冲输入流的常用类有BufferedReader。

BufferedReader可以用于读取字符流,并且提供了按行读取的功能。

缓冲输出流的常用类有BufferedWriter。

BufferedWriter可以用于写入字符流,并且提供了缓冲功能。

在实际应用中,我们经常需要从用户输入中读取字符数据。

可以使用Scanner类来实现字符输入功能。

Scanner类提供了多种方法来读取不同类型的输入。

实验总结:1. 字符输入流和输出流以及缓冲输入流和输出流都是用于字符数据的读写操作,可以方便地处理各种文本文件。

2. 在使用字符输入流和输出流时,需要注意字符编码的设置,以免出现乱码问题。

3. 使用缓冲输入流和输出流可以提高读写的效率,特别是处理大文件时尤为重要。

4. 在从用户输入中读取字符数据时,可以使用Scanner类的各种方法,根据需要进行不同类型的数据读取。

5. 在进行输入输出操作时,一定要注意资源的释放,及时关闭流对象,避免出现内存泄漏的情况。

完整word版,实验04Java输入输出流报告材料

完整word版,实验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输入与输出实验报告

java输入与输出实验报告实验报告:Java 输入与输出实验目的:本次实验旨在熟悉和掌握Java中的输入和输出操作,包括标准输入输出、文件输入输出和异常处理。

实验步骤:标准输入输出:编写一个Java程序,在控制台上输出"请输入您的姓名:"。

使用Scanner类读取用户输入的姓名,并保存到一个字符串变量中。

输出用户输入的姓名,并在后面加上一句问候语。

运行程序,测试标准输入输出功能。

文件输入输出:创建一个名为"input.txt"的文本文件,里面写入一些文本内容。

编写一个Java程序,使用File类和Scanner类读取该文本文件的内容。

将读取到的内容输出到控制台上。

运行程序,测试文件输入输出功能。

异常处理:编写一个Java程序,要求用户输入一个数字。

使用try-catch语句捕获可能发生的NumberFormatException异常。

如果输入的是一个整数,将其平方输出。

如果输入的是非数字字符,则输出"输入错误!"。

运行程序,测试异常处理功能。

实验结果:标准输入输出:用户输入姓名:"张三"程序输出:"您好,张三!"文件输入输出:input.txt文件内容:Hello, World!程序输出:"Hello, World!"异常处理:用户输入:"5"程序输出:"25"用户输入:"abc"程序输出:"输入错误!"实验总结:通过本次实验,我熟悉了Java中的输入和输出操作。

掌握了使用标准输入输出、文件输入输出和异常处理的方法。

这些技能对于日后的Java开发工作非常重要。

在编写程序时,需要注意输入输出的正确性和异常情况的处理,以提高程序的稳定性和用户体验。

java输入输出流试验

java输入输出流试验

java输入输出流试验输入输出流一、实验目的:熟悉java的文件读写机制,练习输入输出流的使用。

二、实验内容:1.在键盘上输入10个整数,从小到大排序。

2、接收键盘输入的字符串,用fileinputstream类将字符串写入文件,用fileoutputstream类读出文件内容显示在屏幕上。

3.逐行读出文本文件的内容,为读出的每一行添加行号,然后将其写入另一个文件。

3、测试要求:1.通过实验掌握文件输入输出流的使用方法;2.程序必须能够从键盘接收字符串并保存在文件中;3.程序必须能够读出文件内容显示在屏幕上;4.写出实验报告。

四、实验步骤:1.在键盘上输入10个整数,从小到大排序。

包装测试;importjava.io.bufferedreader;importjava.io.ioexception;importjava.io.inputstre amreader;publicclassgui_21{publicstaticvoidmain(string[]args)throwsioexception{//TODOAUATO生成MethodSubbufferedReaderbr=newbufferedreader(newstringstr;intarray[]=newint[10];for(inti=0;i<10;i++){系统出来Println(\请输入一个整数:\);str=br。

readline();array[i]=integer.parseint(str);inputstreamreader(system.in));}}}对于(intj=0;j<9;j++){for(intm=0;m<10;m++){}如果(m!=9)system.out.print(array[m]+\);system.out.print(array[m]);else对于(intk=j+1;k<10;k++){if(array[k]inttemp=数组[k];数组[k]=数组[j];数组[j]=temp;}2、接收键盘输入的字符串,用fileinputstream类将字符串写入文件,用fileoutputstream类读出文件内容显示在屏幕上。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

成都大学实验报告
实验项目名称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”的个数,并显示统计的时间。

第一种实现方法
代码如下:
import java.io.FileInputStream;
import java.io.IOException;
public class EXP1_1 {
public static void main(String[] args) throws IOException{ long t =System.currentTimeMillis();
String filename="D:\\bigbook.txt";
FileInputStream fis=new FileInputStream(filename);
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.FileInputStream;
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 filename="D:\\bigbook.txt";
FileInputStream fis=new FileInputStream(filename);
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、掌握文本文件读写、二进制文件读写。

成都大学信息科学与技术学院制。

相关文档
最新文档