实验六 输入输出流与文件

2026/4/27 10:09:51

实验六 输入输出流与文件

一、实验目的

1. 理解数据流的概念

2. 理解Java流的层次结构 3. 理解文件的概念

二、实验要求

1. 掌握字节流的基本使用方法 2. 掌握字符流的基本使用方法 3. 能够创建、读写、更新文件

三、实验内容 (一)运行以下程序

1.使用标准数据流的应用程序

标准数据流指在字符方式下(如DOS 提示符)程序与系统进行输入输出的方式,键盘和显示器屏幕是标准输入输出设备,数据输入的起点为键盘,数据输出的终点是屏幕,输出的数据可以在屏幕上显示出来。

1. 程序功能:将键盘上输入的字符在屏幕上显示出来

2. 编写KY10_1.java 程序文件,源代码如下。

class KY10_1{

public static void main(String[] args) throws java.io.IOException { byte buffer[]=new byte[10];

System.out.println(\从键盘输入不超过10 个字符,按回车键结束输入:\int count =System.in.read(buffer);//读取输入的字符并存放在缓冲区buffer

System.out.println(\保存在缓冲区buffer 中元素的个数为:\System.out.println(\中各元素的值为:\for (int i=0;i

System.out.print(\在屏幕上显示buffer 元素的值 }

System.out.println();

System.out.println(\输出buffer 字符元素:\

System.out.write(buffer, 0, buffer.length); } }

3. 编译、运行KY10_1.java 文件。

2. 使用文件输入输出流的应用程序

1. 程序功能:将保存在本地机当前文件夹中的KY10_2.HTML 文本文件的内容在屏幕上显

示出来,然后将其另存为KY10_2.txt 文件。 2. 编写KY10_2.java 程序文件,源代码如下

import java.io.*; public class KY10_2 {

public static void main(String[] args) throws IOException { FileReader in=new FileReader(\建立文件输入流 BufferedReader bin=new BufferedReader(in);//建立缓冲输入流

FileWriter out=new FileWriter(\建立文件输出流 String str;

while ((str=bin.readLine())!=null) {

//将缓冲区内容通过循环方式逐行赋值给字符串str System.out.println(str);//在屏幕上显示字符串str

out.write(str+\将字符串str 通过输出流写入KY10_2.txt 中 }

in.close(); out.close(); } }

3. 编译、运行程序

3. 使用随机文件类的应用程序

使用文件输入类FileReader 只能将文件内容全部读入。如果要选择读入文件的内容,可使用随机文件类RandomAccessFile。

1. 程序功能:建立数据流,通过指针有选择的读入文件内容。 2. 编写KY10_3.java 程序文件,源代码如下。

import java.io.*; class KY10_3 {

public static void main(String args[]) {

String str[]={\try {

RandomAccessFile rf=new RandomAccessFile(\System.out.println(\文件指针位置为:\System.out.println(\文件的长度为:\rf.seek(rf.length());

System.out.println(\文件指针现在的位置为:\for (int i=0; i<3; i++)

rf.writeChars(str[i]); // 字符串转为字节串添加到文件末尾 rf.seek(10);

System.out.println(\选择显示的文件内容:\String s;

while ((s=rf.readLine())!=null) System.out.println(s); rf.close(); }

catch (FileNotFoundException fnoe) {} catch (IOException ioe) {} } }

3. 编译并运行程序

4.使用数据输入输出流与文件输入输出流类的应用程序

使用数据输入流DataOutputStream 和数据输出流DataInputStream 可以读取或写入任何Java 类型的数据,不用关心它们的实际长度是多少字节。一般与文件输入流FileInputStream 和输出流类FileOutputStream 一起使用。

1. 程序功能:将整型数据和字符串对象通过数据输出流写到文件中。将文件中的整型

数据和字符串对象通过数据输出流读出,并在屏幕上显示文件中的内容。 2. 编写KY10_4.java 程序文件,源代码如下。

import java.io.*; public class KY10_4 {

public static void main(String arg[]) { try

{ //添加方式创建文件输出流

FileOutputStream fout = new FileOutputStream(\DataOutputStream dout = new DataOutputStream(fout); dout.writeInt(1);

dout.writeChars(\罗马\dout.writeInt(2);

dout.writeChars(\北京\dout.close(); }

catch (IOException ioe){} try {

FileInputStream fin = new FileInputStream(\DataInputStream din = new DataInputStream(fin);

int i = din.readInt();

while (i!=-1) //输入流未结束时,输入流结束时i 为-1 {

System.out.print(i+\char ch ;

while ((ch=din.readChar())!='\\n') //字符串未结束时 System.out.print(ch); System.out.println(); i = din.readInt(); }

din.close(); }

catch (IOException ioe){} } }

3. 编译并运行程序

(二)补全填空 1.文件加密

程序模板 SecretExample.java

import java.io.*;

public class SecretExample {

public static void main(String args[ ]) {

File fileOne=new File(\ fileTwo=new File(\ 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

b[i]=(char)(b[i]^'a'); }


实验六 输入输出流与文件.doc 将本文的Word文档下载到电脑
搜索更多关于: 实验六 输入输出流与文件 的文档
相关推荐
相关阅读
× 游客快捷下载通道(下载后可以自由复制和排版)

下载本文档需要支付 10

支付方式:

开通VIP包月会员 特价:29元/月

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信:xuecool-com QQ:370150219