import java.io.*;public class TestPrintStream2 {
public static void main(String[] args) {
String fileName = args[0];
if(fileName != null) {
list(fileName, System.out);
}
}
public static void list(String f, PrintStream ps) {
try {
BufferedReader br = new BufferedReader(new FileReader(f));
String s = null;
while((s = br.readLine()) != null) {
ps.println(s);
}
br.close();
} catch(IOException e) {
ps.println("无法读取文件");
}
}

解决方案 »

  1.   

    package IO;
    //就是一个读文件的过程//Lz为什么用了FileReader读,而又用PrintStream写出去呢,LZ要明确到底要操作的是文本文件还是二进制文件
    import java.io.*;public class TestPrintStream2 
    {
    public static void main(String[] args) 
    {
    String fileName = args[0];
    if(fileName != null) {
    list(fileName, System.out);
    }
    }
    public static void list(String f, PrintStream ps) 
    {
    try
    {
    //定义一个缓冲区,将要读的文件f 传给FileReader
    BufferedReader br = new BufferedReader(new FileReader(f));
    String s = null;

    //只要读的文件不为空,就一直读
    while((s = br.readLine()) != null) 
    {
    //将读出来的数据用PrintStream输出流,写出去
    ps.println(s);
    }
    br.close();

    catch(IOException e) 
    {
    ps.println("无法读取文件");
    }

    }