您的位置:首页 > 编程语言 > Java开发

Java:IO流的一些典型例子

2015-07-25 09:59 591 查看
1. 文本文件复制 TestCopyText.java

/**
用字符流复制txt文件
*/

import java.io.*;

class TestCopyText
{
public static void main(String[] args) throws Exception
{
//创建一个读取流,与磁盘源文件关联
FileReader fr = new FileReader("E:\\《基督山伯爵》.txt");
BufferedReader in = new BufferedReader(new FileReader(fr);

//创建一个写入流,与磁盘目的文件关联
FileWriter fw = new FileWriter("D:\\基督山伯爵.txt");
BufferedWriter out = new BufferedWriter(fw);

//1.读取一行保存在字符串中
String line = null;
while((line = in.readLine()) != null)  //readLine不包含终止符
{
out.write(line, 0, line.length());
out.newLine();//换行
out.flush();
}
in.close();
out.close();

//2.读取一个字符
/* int ch = 0;
while((ch = in.read()) != -1)
{
out.write(ch);
}
in.close();
out.close(); */

//3.读取到一个字符数组中
/* char[] buf = new char[1024];
int len = 0;
while((len = in.read(buf)) != -1)
{
out.write(buf, 0, len);
}
in.close();
out.close(); */

}
}

2. 图片复制 TestCopyPic.java

/**
用字节流复制图片
*/

import java.io.*;

class TestCopyPic
{
public static void main(String[] args) throws Exception
{
//创建读取流关联源文件
FileInputStream fis = new FileInputStream("D:\\dsp.jpg.");
BufferedInputStream in = new BufferedInputStream(fis);

//创建写入流关联目的文件
FileOutputStream fos = new FileOutputStream("E:\\dsp.jpg");
BufferedOutputStream out = new BufferedOutputStream(fos);

int len = 0;
byte[] buf = new byte[1024];
while((len = in.read(buf)) != -1)
{
out.write(buf, 0, len);
out.flush();
}
in.close();
out.close();

}
}


3. 把从键盘录入的字符保存在文件中 TestKeyToFile.java

/**
把从键盘录入的字符保存在文件中,运用转换流
*/

import java.io.*;

class TestKeyToFile
{
public static void main(String[] args) throws Exception
{
InputStream is = System.in;   //获取键盘读取流
InputStreamReader isr = new InputStreamReader(is);  //通过转换流把字节流流转换成字符流
BufferedReader bufr = new BufferedReader(isr);  //字符流加上缓冲区

//创建写入流关联目标文件
FileWriter fw = new FileWriter("D:\\key.txt");
BufferedWriter bufw = new BufferedWriter(fw);

String line = null;
while((line = bufr.readLine()) != null)
{
if(line.equals("over"))
break;

bufw.write(line, 0, line.length());
bufw.flush();
}
bufr.close();
bufw.close();
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: