是否可以在将Apache Commons FileUpload fileItem的内容写入磁盘之前对其进行编辑?

时间:2018-07-06 15:05:49

标签: java apache-commons-fileupload

我使用Apache Commons FileUpload将文件上传到服务器。这是我的实现的摘要:

        while (fileIterator.hasNext())
            {
            FileItem item = fileIterator.next();

            // Get file name
            String fileName = item.getName();
            try
                {
                URL url = this.getClass().getResource("/resources/");
                filePath = url.toURI().getPath();
                }
            catch (URISyntaxException e)
                {
                e.printStackTrace();
                }

            // Write the file.
            File uploadedFile = new File(filePath + fileName);
             /* Before the next line of code executes and writes the file, 
              * I would like to delete the first line of the file to be written. */
            item.write(uploadedFile);

            // Sort the uploaded DAT file
            this.sortUploadedFile(fileName);

我想知道的是,是否有可能打开FileItem(也许以Stream的形式),然后在文件上载并写入服务器之前删除文件的第一行。

由于文件很大(> 2GB),所以我的想法不是使用读取整个文件,进行编辑然后再次写入的传统解决方案;而是我可以在将FileItem写入服务器之前就对其进行更改,从而消除了将整个文件读入内存然后进行写入的需要。

0 个答案:

没有答案