Đúng vậy, tôi đã bắt đầu dự án của mình về việc tạo trình quản lý tải xuống Java đang hoạt động tốt. Vấn đề duy nhất tôi thấy lúc này là khi tôi yêu cầu độ dài nội dung của URL. Khi tôi sử dụng phương thức được cung cấp bởi getContentLength của HttpUrlConnection, nó trả về một Int.Giới hạn trong Java HttpUrlConnection nhận được chiều dài nội dung
Điều này thật tuyệt nếu tôi chỉ tải xuống các tệp có kích thước tệp nhỏ hơn 2GB. Làm một số đào nhiều hơn và thấy rằng java không hỗ trợ giá trị int unsigned, nhưng ngay cả như vậy mà sẽ chỉ cho tôi một kích thước tập tin của một tối đa 4GB.
Bất kỳ ai cũng có thể giúp tôi đi đúng hướng để nhận được kích thước nội dung của tệp lớn hơn 2GB.
Xin cảm ơn trước.
CẬP NHẬT
Cảm ơn bạn trả lời Gentleman Elite, tôi đã cố gắng những gì bạn đề nghị nhưng mà giữ trả lại một giá trị null, nên thay vì những gì tôi đã làm là
HttpURLConnection conn = (HttpURLConnection) absoluteUrl.openConnection();
conn.connect();
long contentLength = Long.parseLong(conn.getHeaderField("Content-Length"));
Đối với một số lý do chỉ sử dụng conn .getRequestProperty luôn trả lại một giá trị rỗng cho tôi
Tôi đang tìm 'getHeaderField (...)' nhưng tôi không thể tìm thấy nó. Đó thực sự là cách tốt nhất để làm điều đó .... Tôi đã cập nhật câu trả lời của mình. Ồ vâng, 'getRequestProperty' được sử dụng TRƯỚC KHI thực hiện yêu cầu POST/GET, tức là yêu cầu đó không phải là yêu cầu và không phải là câu trả lời. –