当前位置:  开发笔记 > 编程语言 > 正文

Java中是否有Null OutputStream?

如何解决《Java中是否有NullOutputStream?》经验,为你挑选了5个好方法。

我需要指定一个OutputStream我正在使用的API,但我实际上并不需要输出.Java有OutputStream相当于> /dev/null



1> McDowell..:
/**Writes to nowhere*/
public class NullOutputStream extends OutputStream {
  @Override
  public void write(int b) throws IOException {
  }
}


这也可以通过以下方式轻松实现:`OutputStream nullOutputStream = new OutputStream(){@ Override public void write(int b){}};`

2> Jon..:

Java看起来并不像Apache Commons IO那样.看看以下内容:

https://commons.apache.org/proper/commons-io/javadocs/api-2.5/org/apache/commons/io/output/NullOutputStream.html

希望有所帮助.



3> haylem..:

它还没有被提及,所以我还要添加Guava的ByteStreams.nullOutputStream(),因为有些人可能更喜欢Guava而不是Apache Commons IO,或者已经将它放在他们的项目中.

注意:如果您使用较旧版本的Guava(从1.0到13.0),则需要使用com.google.io.NullOutputStream.



4> Vineet Reyno..:

重新提供已经提供的答案 -

Java没有NullOutputStream类.然而,您可以滚动自己OutputStream忽略写入其中的任何数据 - 换句话说write(int b),write(byte[] b)并且write(byte[] b, int off, int len)将具有空方法体.这就是Common IO NullOutputStream类的功能.



5> leventov..:

从Java 11开始,有一个静态工具可以完全满足您的需要,它是一个静态工厂方法OutputStream.nullOutputStream()

返回一个丢弃所有字节的新OutputStream。返回的流最初是打开的。通过调用close()方法关闭流。随后对close()的调用无效。

推荐阅读
手机用户2402852307
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有