Tôi có một tệp có thể là bất kỳ nội dung nào như ZIP, RAR, txt, CSV, tài liệu, v.v. Tôi muốn tạo ByteArrayInputStream từ đó.
Tôi đang sử dụng tệp để tải tệp lên FTP qua FTPClient từ Apache Commons Net.Làm thế nào để tạo ByteArrayInputStream từ một tệp trong Java?
Có ai biết cách thực hiện không?
Ví dụ:
String data = "hdfhdfhdfhd";
ByteArrayInputStream in = new ByteArrayInputStream(data.getBytes());
Mã của tôi:
public static ByteArrayInputStream retrieveByteArrayInputStream(File file) {
ByteArrayInputStream in;
return in;
}
Để đọc tập tin trong byte tôi sử dụng RandomAccessFile và chuyển các tập tin byte toàn bộ vào một mảng byte đầu tiên. Tôi thấy đây là một cách cực kỳ nhanh để đọc các tập tin theo byte. –
Tại sao bạn cần phải làm điều này? Bạn có thể làm điều này bằng cách sao chép một FileInputStream đến một ByteArrayOutputStream và sau đó tạo ra một ByteArrayInputStream từ đó. Dĩ nhiên là vô nghĩa. –
Vui lòng giải thích trường hợp sử dụng của bạn. Bạn có thể chỉ muốn một FileInputStream. Làm thế nào để bạn có kế hoạch sử dụng nó một khi bạn có nó? –