diff --git a/common/src/main/java/com/jeesite/common/io/FileUtils.java b/common/src/main/java/com/jeesite/common/io/FileUtils.java index 980e7941..9d18cd0a 100644 --- a/common/src/main/java/com/jeesite/common/io/FileUtils.java +++ b/common/src/main/java/com/jeesite/common/io/FileUtils.java @@ -710,11 +710,11 @@ public class FileUtils extends org.apache.commons.io.FileUtils { end = Long.parseLong(values[1]); } } - int requestSize = 0; + long requestSize = 0; if (end != 0 && end > start) { requestSize = Long.valueOf(end - start + 1).intValue(); } else { - requestSize = Integer.MAX_VALUE; + requestSize = Long.MAX_VALUE; } response.setContentType(FileUtils.getContentType(file.getName())); boolean isPreview = "preview".equalsIgnoreCase(request.getParameter("source")); @@ -748,12 +748,12 @@ public class FileUtils extends org.apache.commons.io.FileUtils { } } randomFile.seek(start); - int needSize = requestSize; + long needSize = requestSize; while (needSize > 0) { byte[] buffer = new byte[1024]; int len = randomFile.read(buffer); if (needSize < buffer.length) { - out.write(buffer, 0, needSize); + out.write(buffer, 0, (int)needSize); } else { out.write(buffer, 0, len); if (len < buffer.length) {