diff --git a/src/main/java/org/apache/commons/fileupload/util/Streams.java b/src/main/java/org/apache/commons/fileupload/util/Streams.java
index 8f8e022..651033e 100644
--- a/src/main/java/org/apache/commons/fileupload/util/Streams.java
+++ b/src/main/java/org/apache/commons/fileupload/util/Streams.java
@@ -64,11 +64,9 @@
      * @return Number of bytes, which have been copied.
      * @throws IOException An I/O error occurred.
      */
-    public static long copy(InputStream inputStream,
-            OutputStream outputStream, boolean closeOutputStream)
+    public static long copy(InputStream inputStream, OutputStream outputStream, boolean closeOutputStream)
             throws IOException {
-        return copy(inputStream, outputStream, closeOutputStream,
-                new byte[DEFAULT_BUFFER_SIZE]);
+        return copy(inputStream, outputStream, closeOutputStream, new byte[DEFAULT_BUFFER_SIZE]);
     }
 
     /**
@@ -166,8 +164,7 @@
      * @return The streams contents, as a string.
      * @throws IOException An I/O error occurred.
      */
-    public static String asString(InputStream inputStream, String encoding)
-            throws IOException {
+    public static String asString(InputStream inputStream, String encoding) throws IOException {
         ByteArrayOutputStream baos = new ByteArrayOutputStream();
         copy(inputStream, baos, true);
         return baos.toString(encoding);
