Java中有三个标准文件描述符:标准输入System.in,标准输出System.out,标准出错System.err。
标准输出和标准出错的一个区别是,标准输出往往是带缓存的,而标准出错没有缓存(默认设置,可以改)。所以如果你用标准出错打印出来的东西可以马上显示在屏幕,而标准输出打印出来的东西可能要再积累几个字符才能一起打印出来。如果你在应用中混用标准输出和标准出错就可能看到这个问题。
System.err.println能保证你在连System.out.println都因为异常而无法实现的时候实现屏幕打印功能。
另一个区别:在目前的程序中,存在标准输出和错误输出两种的方式,在默认的情况下面两者是指向了同一个输出(即屏幕上的输出),但是这个是可以改变的!
java -cp classpath MyClass > out.txt 2> err.txt
这样运行以后,System.out.println就输出到了out.txt中,System.err.println就输出到err.txt中,所以你应该尽量保证你的意思是正确的,即out是一般性的输出,err是当出现错误的时候才使用的输出。
ps:打印System.err在eclipse是红色的。System.out是蓝色的。
分享到:
相关推荐
《Log4j将System.out重定向到Log4j输出详解》 在日志管理中,Log4j是一款广泛使用的开源日志框架,它允许开发者灵活地控制日志信息的输出方式和级别。当我们习惯于使用`System.out.println()`进行调试时,如何将...
"Java基础(System.err和System.out)详解" Java基础中的System.err和System.out是两个非常重要的输出流,它们都是输出流,但它们有着不同的用途和特点。下面我们将详细介绍这两个输出流的概念、区别和使用注意事项...
在Java编程语言中,I/O(输入/输出)是程序与外部世界交互的重要部分,而标准输入输出流(System.in, System.out, System.err)是Java内置的预定义流,用于处理程序与操作系统之间的基本输入输出操作。这篇博客将深入...
1. **日志重定向**:Tomcat默认配置下,标准输出(`System.out`)和标准错误(`System.err`)会被重定向到服务器的控制台日志中。如果Tomcat日志配置发生了变化或者日志文件达到了某个大小限制,那么新的输出可能会...
该类是Java.lang包中的一个重要组件,主要提供了三个静态变量:System.out、System.in和System.err,用于控制台的输入输出。 System.out是一个PrintStream类型的对象,表示应用程序的终端窗口,可以使用print或...
2. 使用`System.setOut()`和`System.setErr()`方法,将`System.out`和`System.err`替换为`CaptureStream`。 3. 当需要释放控制台输出时,可以通过恢复原始的`PrintStream`实例(通常是`System.out`和`System.err`)...
System.err.println("私钥签名——公钥验证签名"); // 产生签名 String sign = CertificateUtils.signToBase64(data.getBytes("utf-8"), keyStorePath, alias, password); System.out.println("私钥签名:" + ...
这意味着所有通过System.out.println()或System.err.println()打印的信息,包括Java应用的调试信息,都将被记录在此文件中。 控制`catalina.out`大小的方法主要有两种:一是配置Tomcat的logging.properties文件,二...
System.out.println("finally"); return flag; Exception e; e; e.printStackTrace(); System.out.println("finally"); return false; Exception exception; exception; System.out.println("finally"); ...
System.out.println("结果:" + resultEntity.getResult() + "|状态:" + resultEntity.getStatusCode()); } else { System.err.println("执行出错了-->" + resultEntity.getErrorMsg()); } } else ...
Java 系统预先定义了三个流对象:System.out、System.in 和 System.err。其中,System.out 是标准输出流,用于将数据输出到屏幕上;System.in 是标准输入流,用于从键盘输入数据;System.err 是标准错误设备,用于...
4. **System.out.print与System.out.println的区别**: - `System.out.print`:这个方法不会自动换行,而是连续输出内容。 - `System.out.println`:在输出内容后,会自动添加一个换行符,使得下一行输出在新的行...
这些文件可以通过 System.in、System.out 和 System.err 来访问。stdin 是标准输入文件,stdout 是标准输出文件,stderr 是标准错误输出文件。 System.in 是一个 InputStream 类的实例,可以使用 read() 和 skip...
1. **标准输入/输出/错误流(System.in, System.out, System.err)**:在常规的单元测试中,很难控制这些流的输出。System Lambda 允许开发者替换这些流,以便于捕获、验证或模拟输入输出数据。 2. **系统属性...
这里将`System.out.println()`的结果传递给`System.err.println()`,但由于`System.out.println()`没有返回值,所以实际上这段代码并不会有任何实际作用。 #### 案例二:字符输出与循环打印 **知识点概述:** 本...
System.err.println("IOException: " + ioe); } } /* 通过建立的连接请求一个页面,显示回应然后关闭socket */ public static void getPage(Socket clientSocket) { try { // 需要输入和输出流
System.out.println("Received response: " + response.toString()); } catch (Exception e) { e.printStackTrace(); } } } ``` 这个示例中,我们创建了一个`getString`方法的请求,调用Web服务并打印返回的...
`System.err` 是标准错误设备,表示屏幕。 输出语句 输出语句是指将数据从程序内部输出到外部世界的语句。Java 中常用的输出语句有 `System.out.print()` 和 `System.out.println()`。`System.out.print()` 输出...