Получить содержимое файла из составного формата в сервлете 2.4JAVA

Программисты JAVA общаются здесь
Ответить
Anonymous
 Получить содержимое файла из составного формата в сервлете 2.4

Сообщение Anonymous »

Я хочу, чтобы пользователь загружал свой файл, и я буду хранить этот файл на своем сервере.
ВАЖНО: я могу использовать ТОЛЬКО "servlet-api.jar(версия 2.4)", я не могу использовать другой JAR!
Я использую для загрузки моего файл.
Затем я использую этот код InputStream Whole = request.getInputStream();, чтобы получить весь входной поток.
Затем я использую этот код, чтобы получить строку содержимого файла

Код: Выделить всё

BufferedReader br = new BufferedReader(new InputStreamReader(whole, "UTF-8"));
while ((line = br.readLine()) != null) {
sb.append(line);// sb is stringbuilder here
}
Затем я конвертирую строку, полученную из построителя строк, в InputStream:

Код: Выделить всё

InputStream is = new ByteArrayInputStream(result.getBytes("UTF-8""));
Наконец, я записываю этот входной поток в другой файл (временный), используя следующий код:

Код: Выделить всё

OutputStream outputStream = new FileOutputStream(temp);// temp is a file.
int read = 0;
byte[] bytes = new byte[1024];
while ((read = is.read(bytes)) != -1) {
outputStream.write(bytes, 0, read);
}
Когда я загружаю файл .txt, он работает, и я могу открыть temp.txt. Однако когда я загружаю файл .docx, я не могу открыть temp.docx. Как я могу решить эту проблему? Это потому, что у меня неправильная кодировка?

Подробнее здесь: https://stackoverflow.com/questions/230 ... ervlet-2-4
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «JAVA»