第一篇:Java中输出流
从输入流中当前位置读入一个字节的二进制数据,以此数据为低位字节,补足16位的整型量(0~255)后返回,若输入流中当前位置没有数据,则返回-1
int read(byte b[])
在数组中,并返回所读取的字节数
写入文件的PipedOutputStream
输出管道
FilterOutputStream
过滤输出流
ByteArrayOutputStream
写入字节数组的输出流
ObjectOutputStream
对象的输出流
DataOutputStream
包含写Java标准数据类型方法的输出流
BufferedOutputStream
缓冲输出流
PrintStream
包含print()和println()的输出流
OutputStream流类中包含一套所有输出都需要的方法,可以完成最基本的向输出流写入数据的功能。表10-8列出了其中常用的方法及说明。
表10-8 OutputStream的常用方法
方法
功能描述
void close()
关闭输出流
void flush()
强制清空缓冲区并执行向外设输出数据
void write(int b)
将参数b的低位字节写入到输出流
void write(byte b[])
按顺序将数组b[]中的全部字节写入到输出流
void write(byte b[], int off, int len)
按顺序将数组b[]中第off+1个元素开始的len个数据写入到输出流
由于InputStream和OutputStream都是抽象类,所以在程序中创建的输入流对象本溪娱乐棋牌q07i5.org一般是它们某个子类的对象,通过调用对象继承的read()和write()方法就可实现对相应外设的输入输出操作。
第二篇:java 文件与输入输出流
实验2文件与输入输出流(1)
一、实验目的 能够使用File类表示文件或目录,获取相关信息,并进行文件操作; 能够利用InputStream和OutputStream的子类进行字节读、写操作,明白其优点及不足;
能够用FileInputStream和FileOutputStream进行文件读写的操作; 理解“逐层包装”思想,能够利用“数据流”(DataInputStream和DataOutputStream)包装字节流,方便各类数据的读写;
能够利用“缓冲字节流”(BufferedInputStream和BufferedOutputStream)包装字节流,加快数据的读写速度;
熟知System.in和System.out是PrintStream的实例。
二、实验步骤
在Eclipse环境中导入项目“code(lab_2)”,然后按要求完成各小题:
1.打开FileTest.java文件,请按下列要求进行操作:
(1)按要求填充程序所缺代码;
(2)程序的运行需要用到一个命令行参数,请分别用一个文件、目录作参数来运行程序,看一看结果有什么不同。
(在Eclipse中设置命令行参数方法:Run/Open Run Dialog „/(x)=Arguments设置)
2.在上一题的基础上,修改程序,使之具备输出指定目录下所有子目录中文件绝对路径名、大小的功能,如下所示:
子目录:C:jdk1.6.0sample
子目录:C:jdk1.6.0samplewebservices
子目录:C:jdk1.6.0samplewebservicesEbayServer
文件: C:jdk1.6.0samplewebservicesEbayServerbuild.properties,大小: 512 字节 文件: C:jdk1.6.0samplewebservicesEbayServerbuild.xml,大小: 3168 字节1
……
提示:参考课件 FileSpace.java内容,通过一个以“路径名”为参数的静态方法来实现:该方法先判断“路径名”是一个文件,还是一个目录?如果是文件,则输出其绝对路径和大小;若为一个目录,则先显示目录绝对路径,再列出该目录下的所有子目录和文件,通过循环和递归方法来执行后续处理。
3.文件FileOutputStreamTest.java的功能是:利用FileOutputStream类向myfile.txt文件写入'0'~'9'和“用字节流写入文件内容”,请填充程序所缺代码,并运行程序。然后打开myfile.txt文件,查看其内容是否与要求相符?
4.文件FileInputStreamTest1.java的功能是:利用FileInputStream类以“逐字节”方式读取myfile.txt文件内容,并输出。请填充程序所缺代码,并运行程序。问题:为什么程序输出的内容为乱码?
5.在FileInputStreamTest1.java的基础上,编写程序FileInputStreamTest2.java,利用FileInputStream类以“字节数组”方式读取myfile.txt文件内容,能正确输出,解决乱码问题。
思考题:乱码问题是怎样解决的?
6.若要将信息“Java开发典型模块大全”(书名)、“明日科技”(作者)、79.5(价格)等信息以UTF、double类型保存到文件books.txt中,请用“数据流”类编程实现。
第三篇:java流实验内容及代码
实验7 流(2学时)
一、实验目的1.熟悉流类库中各种常用流的使用方法。
2.能够使用流类实现基本的文件读写。
二、实验内容
1.编写程序,在控制台窗口提示输入两个整数,然后接收这两个整数,并输出它们的和。(要求:键盘输入通过流封装System.in获取,不要使用Scanner类)
import java.io.*;System.out.println(x);System.out.println(“y”);public class Num1 {n=in.readLine();public static void main(String []args)y=Integer.parseInt(n);{System.out.println(y);int x=0,y=0;}catch(IOException e)BufferedReader in=new BufferedReader({
newSystem.out.println(“error”);InputStreamReader(System.in));}
String n;int s=x+y;
try{System.out.println(s);System.out.println(“x”);}
n=in.readLine();}
x=Integer.parseInt(n);
2.设计学生类Student,属性:编号(整型);姓名(字符串),成绩(整型)。编写一个程序:要求:(1)输入3个学生的姓名和成绩,将其姓名和成绩保存到data.txt中;(2)然后从该文件中读取数据,求得这三个学生的平均成绩。
import java.io.*;DataOutputStream dout = newDataOutputStream(public class num2 {newpublic static void main(String[]args)FileOutputStream(“D:data.txt”));{String n;
BufferedReader in=new BufferedReader(for(int i=0;i<5;i++)new{
InputStreamReader(System.in));n=in.readLine();
int num=Integer.parseInt(n);try{String name=in.readLine();
n=in.readLine();int grade=Integer.parseInt(n);dout.writeBytes(num+“rn”);dout.writeBytes(name+“rn”);dout.writeBytes(grade+“rn”);}dout.close();}catch(IOException e1){int num=Integer.parseInt(n);
n=din.readLine();String name=n;n=din.readLine();int grade=Integer.parseInt(n);ave+=grade;}System.out.println(“平均成绩”+ave*1.0/5);System.out.println(“文件写入失败”);}try{DataInputStream din =new DataInputStream(new FileInputStream(“D:data.txt”));int ave=0;String n;for(int i=0;i<5;i++){n=din.readLine();
三、实验要求
完成程序设计并提交实验报告。
在“);失败”);} }
}catch(FileNotFoundException e){System.out.println(“文件不存}catch(IOException e2){System.out.println(”文件读取}
第四篇:实验12:Java高级IO流程序设计
实验12:Java高级I/O流程序设计
实验时间:实验地点:
一、实验目的及要求
(1)掌握文件类File的使用。
(2)理解随机存取文件类RandomAccessFile的使用。
二、实验设备环境及要求
三、实验任务
(1)按要求编写Java Application程序,并编译、运行这个程序。
四、实验内容与步骤
1.输出当前目录下my.txt文件的基本信息。
import java.io.*;
import java.util.*;
public class FileTest{
public static void main(String args[]){File f=new File(“my.txt”);System.out.println(“Absolute path: ” + f.getAbsolutePath()+“n Can read: ” + f.canRead()+“n Can write: ” + f.canWrite()+“n getName: ” + f.getName()+“n getParent: ” + f.getParent()+“n getPath: ” + f.getPath()+“n length: ” + f.length()+“n lastModified: ” + new Date(f.lastModified()));if(f.isFile())System.out.println(“It's a file”);
}}else if(f.isDirectory())System.out.println(“It's a directory”);
2.编写一个Java Application程序,实现如下的设计功能:运行该程序可以列出当前目录下的文件。
import java.io.*;
class FileDir{
public static void main(String args[]){
File f=new File(“D:”);
File fs[]=f.listFiles();
for(int i=0;i if(fs[i].isFile()) System.out.println(fs[i].getName()); else System.out.println(“
}
}
}
五、实验指导与处理
六、分析讨论
实验教师评语成绩
签名:
日期:
第五篇:Java语言实验指导书-实验10 流范文
一、实验目的(1)熟悉文件流操作方法。
(2)应用文件流操作文件。
二、实验内容
(1)利用流操作,在屏幕上显示文本文件内容及文件的路径、修改时间、大小、长度、可读性和可修改性等属性。
(2)借助流操作,以图形界面方式向文本文件添加记录并显示其记录内容。
三、实验要求
文件名通过命令行以参数方式输入。程序需要判断参数所提供文件的存在性。待添加的 记录通过TextField控件输入,文件内容通过TextArea控件显示。