我有一個允許上傳二進制文件的web應用程序。我必須解析它們並將內容1:1保存到字符串中,然後保存到數據庫中。使用FileItemStream在Java中處理二進制文件
當我在unix機器上使用uuencode對二進制文件進行編碼時,它就可以工作。有沒有辦法在java中自動執行此操作?
if (isMultipart) {
//Create a new file upload handler
ServletFileUpload upload = new ServletFileUpload();
//Parse the request
FileItemIterator iter = upload.getItemIterator(request);
while (iter.hasNext()) {
FileItemStream item = iter.next();
String name = item.getFieldName();
InputStream stream = item.openStream();
if (!item.isFormField()) {
BufferedReader reader = new BufferedReader(new InputStreamReader(stream));
String line;
licenseString = "";
while ((line = reader.readLine()) != null) {
System.out.println(line);
// Generate License File
licenseString += line + "\n";
}
}
}
session.setAttribute("licenseFile", licenseString);
System.out.println("adding licensestring to session. ");
}
它當然適用於所有上傳的非二進制文件。我如何擴展它以支持二進制文件?
謝謝,這是一個很好的輸入,但我已經試過了。它不能解決我的「編碼」 - 問題:( – doonot 2012-02-21 10:42:49