java程序设计中的对于输入输出与文件处理有很多详细的方法,这里我只是介绍几个基本的输入输出流
1、InputStream流类
InputStream流类中包一套所有字节输入都需要的方法,可以完成最基本的从输入流读取数据的功能。以下为常见的方法以及功能。
public int read() 从输入流中的当前位置读入一个字节的二进制数据
public int read(byte[] b) 从输入流中的当前位置连续读入多个字节保存在数据b中,同时返回所读到的字节数
public int read(byte[] b,int off,int leg) 从数据流中的当前位置连续读入len个字节,从数组b的第off+1个元素位置处开始存放,同时返回所读到的字节数
public int available() 返回输入流中可以读取的字节数
public long skip(long n) 使位置指针从当前位置向后跳过n个字节
public void reset() 将位置指正返回到标记的位置
public void close() 关闭输入流与外设的连接并释放所占用的系统资源
2、OutputStream流类
OutputStream流类中包一套所有字节输出都需要的方法,可以完成最基本的从输出流写入数据的功能。以下为常见的方法以及功能。
public void write(int b) 将参数 b的低位字节写入到输出流
public void write(byte[] b) 将字节数组b中的全部字节按顺序写入到输出流中
public void write(byte[] b,int off,int leg) 将字节数组b中第off+1个元素开始的len个数据,顺序地写入到输入流
public void flush() 强制清空缓冲区并执行向外设写操作
public void close() 关闭输出流与外设的连接并释放所占用的系统资源
下面为一个利用输入输出流书写文件的例子
package App10;
//利用输入输出流书写文件
import java.io.*;
class App10_1
{
public static void main(String[] args)
{
FileInputStream fin;//声明文件字节输入流对象fin
FileOutputStream fout;//声明文件字节输出流对象fout
char ch;
int data;
try
{
fin=new FileInputStream(FileDescriptor.in);//创建文件字节输入流对象fin
fout=new FileOutputStream(“f:\Stream\App10_1.txt”);//创建文件字节输出流对象fout
System.out.println(“请输入一串字符,并以#结束”);
while((ch=(char)fin.read())!=’#’)
fout.write(ch);
fin.close();
fout.close();
System.out.println();
fin=new FileInputStream(“f:\Stream\App10_1.txt”);
fout=new FileOutputStream(FileDescriptor.out);
while(fin.available()>0)
{
data=fin.read();
fout.write(data);
}
fin.close();
fout.close();
}
catch
(FileNotFoundException e)
{
System.out.println(“文件没有找到”);
}
catch(IOException e)
{}
}
}