Загрузить документ Word - PullRequest
       14

Загрузить документ Word

0 голосов
/ 25 марта 2011

Мне нужно извлечь текст из слова документа, загруженного пользователем.Я получил код , чтобы извлечь слова из документа, расположенного на моем т / с.Но мое требование - разрешить пользователям загружать свои собственные документы с помощью кнопки загрузки и читать этот документ (мне не нужно сохранять этот документ).Можете ли вы предложить мне, как это сделать?Мне нужно знать, что все должно произойти после нажатия кнопки загрузки.

1 Ответ

1 голос
/ 25 марта 2011

Когда пользователь загружает свой файл, возьмите связанный InputStream и сохраните его в переменной, например inputStream. Затем просто возьмите пример кода и замените эту строку:

fs = new POIFSFileSystem(new FileInputStream(filesname));

... с чем-то вроде:

fs = new POIFSFileSystem(inputStream); 

Должно быть достаточно просто, при условии, что у вас уже есть Servlet для обработки загрузки.

Редактировать:

Вот основные принципы работы сервлета при условии, что вы используете commons-fileupload для анализа загрузки:

public class UploadServlet extends HttpServlet {
    @Override
    public void doPost(HttpServletRequest request, HttpServletResponse response) throws IOException, ServletException {
        // Create a factory for disk-based file items
        FileItemFactory factory = new DiskFileItemFactory();

        // Create a new file upload handler
        ServletFileUpload upload = new ServletFileUpload(factory);

        // Parse the request
        List<FileItem> items = upload.parseRequest(request);

        //this assumes that the uploaded file is the only thing submitted by the form
        //if not you need to iterate the list and find it
        FileItem wordFile = items.get(0);

        //get a stream that can be used to read the uploaded file
        InputStream inputStream = wordFile.getInputStream();

        //and the rest you already know...
    }
}
...