Repository: commons-io
Updated Branches:
refs/heads/master d4f28d7ff -> acceb6296
IO-542: FileUtils#readFileToByteArray: optimize reading of files with known size (closes #38)
Project: http://git-wip-us.apache.org/repos/asf/commons-io/repo
Commit: http://git-wip-us.apache.org/repos/asf/commons-io/commit/936b820a
Tree: http://git-wip-us.apache.org/repos/asf/commons-io/tree/936b820a
Diff: http://git-wip-us.apache.org/repos/asf/commons-io/diff/936b820a
Branch: refs/heads/master
Commit: 936b820a4e9b9f96661c961bab87e4ec05ca0574
Parents: d4f28d7
Author: Ilmars Poikans <ilmars@delibero.lv>
Authored: Sun Jul 2 16:01:23 2017 +0300
Committer: pascalschumacher <pascalschumacher@gmx.net>
Committed: Sun Jul 2 17:09:47 2017 +0200
----------------------------------------------------------------------
src/main/java/org/apache/commons/io/FileUtils.java | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/commons-io/blob/936b820a/src/main/java/org/apache/commons/io/FileUtils.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/apache/commons/io/FileUtils.java b/src/main/java/org/apache/commons/io/FileUtils.java
index 10f39b9..f03d785 100644
--- a/src/main/java/org/apache/commons/io/FileUtils.java
+++ b/src/main/java/org/apache/commons/io/FileUtils.java
@@ -1849,7 +1849,9 @@ public class FileUtils {
*/
public static byte[] readFileToByteArray(final File file) throws IOException {
try (InputStream in = openInputStream(file)) {
- return IOUtils.toByteArray(in); // Do NOT use file.length() - see IO-453
+ long fileLength = file.length();
+ // file.length() may return 0 for system-dependent entities, treat 0 as unknown
length - see IO-453
+ return fileLength > 0 ? IOUtils.toByteArray(in, fileLength) : IOUtils.toByteArray(in);
}
}
|