@Beta @GwtIncompatible public final class Closeables extends Object
Closeable objects.| Modifier and Type | Method and Description | 
|---|---|
| static void | close(Closeable closeable,
     boolean swallowIOException)Closes a  Closeable, with control over whether anIOExceptionmay be thrown. | 
| static void | closeQuietly(InputStream inputStream)Closes the given  InputStream, logging anyIOExceptionthat's thrown rather than
 propagating it. | 
| static void | closeQuietly(Reader reader)Closes the given  Reader, logging anyIOExceptionthat's thrown rather than
 propagating it. | 
public static void close(@Nullable Closeable closeable, boolean swallowIOException) throws IOException
Closeable, with control over whether an IOException may be thrown.
 This is primarily useful in a finally block, where a thrown exception needs to be logged but
 not propagated (otherwise the original exception will be lost).
 If swallowIOException is true then we never throw IOException but merely log
 it.
 
Example:
   
   public void useStreamNicely() throws IOException {
     SomeStream stream = new SomeStream("foo");
     boolean threw = true;
     try {
       // ... code which does something with the stream ...
       threw = false;
     } finally {
       // If an exception occurs, rethrow it only if threw==false:
       Closeables.close(stream, threw);
     }
   }closeable - the Closeable object to be closed, or null, in which case this method
     does nothingswallowIOException - if true, don't propagate IO exceptions thrown by the close
     methodsIOException - if swallowIOException is false and close throws an
     IOException.public static void closeQuietly(@Nullable InputStream inputStream)
InputStream, logging any IOException that's thrown rather than
 propagating it.
 While it's not safe in the general case to ignore exceptions that are thrown when closing an
 I/O resource, it should generally be safe in the case of a resource that's being used only for
 reading, such as an InputStream. Unlike with writable resources, there's no chance that
 a failure that occurs when closing the stream indicates a meaningful problem such as a failure
 to flush all bytes to the underlying resource.
inputStream - the input stream to be closed, or null in which case this method
     does nothingpublic static void closeQuietly(@Nullable Reader reader)
Reader, logging any IOException that's thrown rather than
 propagating it.
 While it's not safe in the general case to ignore exceptions that are thrown when closing an
 I/O resource, it should generally be safe in the case of a resource that's being used only for
 reading, such as a Reader. Unlike with writable resources, there's no chance that a
 failure that occurs when closing the reader indicates a meaningful problem such as a failure to
 flush all bytes to the underlying resource.
reader - the reader to be closed, or null in which case this method does nothingCopyright © 2010-2017. All Rights Reserved.