System.out与System.err的区别
out是希望用户看到的,err是不希望用户看到的信息,可由后台输出;
System.out可以重定向错误信息到指定磁盘文件,供用户查看;
———System.out、in、err的重定向:
1.public static void setOut(PrintStream out);// 重新设置out对象引用的流;
Reassigns the “standard” output stream.
First, if there is a security manager, its checkPermission method is called with a RuntimePermission(“setIO”) permission to see if it’s ok to reassign the “standard” output stream.
2.public static void setErr(PrintStream err);// 重新设置err引用的流
3.public static void setIn(InputStream in); // 。。。。
——重定向System.out:
package com.mldn;
import java.io.File;
import java.io.OutputStream;
import java.io.FileOutputStream;
import java.io.PrintStream;
import java.io.FileNotFoundException;
import java.io.IOException;
public class Reassign
{
public static void main(String[] args)
{
String path = File.separator + “home” + File.separator + “administrator” + File.separator + “system.out.txt”;
//File file = new File(path); // 实例化文件对象;
OutputStream output = null; // 声明输出流对象;
try
{
output = new FileOutputStream(new File(path), true); // 实例化输出流的对象;
}
catch (FileNotFoundException e)
{
e.printStackTrace();
}
PrintStream out = new PrintStream(output); // 实例化打印流,向下转型;
System.out.println(“信息被重定向到磁盘文件!”);
System.setOut(out); // 重定向到out流对应的文件;
System.out.println(“Hello, world!”);
out.close();
}
}
/*
输出信息都保存在指定文件中;
*/
————也可以这么写:匿名对象的形式:
package com.mldn;
import java.io.File;
import java.io.OutputStream;
import java.io.FileOutputStream;
import java.io.PrintStream;
import java.io.IOException;
public class Reassign
{
public static void main(String[] args)
{
String path = File.separator + “home” + File.separator + “administrator” + File.separator + “system.out.txt”;
System.out.println(“信息重定向成功!”);
try
{
System.setOut(
new PrintStream(
new FileOutputStream(
new File(path))));
}
catch (IOException e)
{
e.printStackTrace();
}
System.out.println(“Hello, world!”);
}
}
/*
输出信息都保存在指定文件中;
*/
声明: 除非转自他站(如有侵权,请联系处理)外,本文采用 BY-NC-SA 协议进行授权 | 嗅谱网
转载请注明:转自《System.out与System.err的区别》
本文地址:http://www.xiupu.net/archives-95.html
关注公众号:
微信赞赏
支付宝赞赏