IO流读取上传文件的内容

这篇具有很好参考价值的文章主要介绍了IO流读取上传文件的内容。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

 

package com.dj.springtest.controller;

import com.alibaba.fastjson.JSON;
import com.dj.springtest.model.dto.UploadDTO;
import com.dj.springtest.service.FileService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.http.MediaType;
import org.springframework.web.bind.annotation.ModelAttribute;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestPart;
import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.multipart.MultipartFile;

import java.io.IOException;

/**
 * User: ldj
 * Date: 2024/1/10
 * Time: 22:10
 * Description: No Description
 */
@RestController
public class FileController {

    @Autowired
    private FileService fileService;
    
    @PostMapping("/test/read/file")
    public String readFile(@RequestPart("file") MultipartFile file) throws IOException {
        return fileService.readFile(file);
    }

}
package com.dj.springtest.service.impl;

import com.dj.springtest.service.FileService;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Service;
import org.springframework.web.multipart.MultipartFile;

import java.io.ByteArrayOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.util.Objects;

/**
 * User: ldj
 * Date: 2024/1/13
 * Time: 19:02
 * Description: No Description
 */
@Slf4j
@Service
public class FileServiceImpl implements FileService {

    @Override
    public String readFile(MultipartFile file) {
        if (Objects.isNull(file)) {
            return null;
        }

        InputStream inputStream = null;
        ByteArrayOutputStream outputStream = null;
        try {
            String originalFilename = file.getOriginalFilename();
            log.info("文件名:{}", originalFilename);
            inputStream = file.getInputStream();
            outputStream = new ByteArrayOutputStream();

            int len = 0;
            byte[] bytes = new byte[1024];
            while ((len = inputStream.read(bytes)) != -1) {
                outputStream.write(bytes, 0, len);
            }
        } catch (IOException e) {
            log.error("读取文件失败!", e);
        } finally {
            try {
                if (outputStream != null) {
                    outputStream.flush();
                    outputStream.close();
                }

                if (inputStream != null) {
                    inputStream.close();
                }
            } catch (IOException e) {
                log.error("关闭流失败!", e);
            }
        }
        return outputStream != null ? outputStream.toString() : null;
    }

}

IO流读取上传文件的内容,java,java文章来源地址https://www.toymoban.com/news/detail-810529.html

到了这里,关于IO流读取上传文件的内容的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • java读取txt文件内容

    有一个txt文件,需要按行读取内容,并按逗号分隔 共19条数据,故输出19。 大家还有什么好的读取方法吗(有没有直接读取int的方法)?可以教教我吗?

    2024年02月13日
    浏览(46)
  • java 读取pdf文件内容

    https://blog.csdn.net/ThinkPet/article/details/131256428

    2024年02月08日
    浏览(44)
  • java中按行读取文件内容

          java中按行来读取文件内容,一般对文件也是又要求的,比如文件编码utf-8,内容是按行可读,而不是一堆字节码。这类文件,我们按行读取,主要是方便快速查看内容,并且用这些内容来作别的用途,这类文件内容不宜过多,否则加载容易出现意想不到的问题,比如内

    2024年02月03日
    浏览(38)
  • java通过url读取文件内容

     使用java获取远程服务器的文件,并读取内容(该文件可以通过Url直接获取) 使用的时候稍作修改,将inputLine赋值,然后使用,否则直接在下面调用为nul,因为循环过后inputLine变成null!!!(按行读取)

    2024年02月12日
    浏览(55)
  • Java按行读取文件文本内容

    在工作和学习中,有时候会有一些场景,代码需要配合读取文件来执行,比如:读文件数据,来进行计算、组装SQL、更新操作...... 下面我们来讨论下,在Java中按行读取文件文件内容的方式有哪些? 读取的文件内容 测试代码 输出结果 分析:虽然读取1个字符,但每行后面可能

    2024年02月15日
    浏览(70)
  • 通过Java读取csv文件内容

    1、通过 FileReader(String fileName) 读取整个文件,并通过 BufferedReader(Reader in) 作为每行的缓冲; 2、在通过 readLine() 读取每行内容,通过空格作为分隔符,每行转为数组,并存在 ListString[] 列表中; 3、最后打印 csv文件中的内容。 csv 文件内容如下: 打印的代码如下: 输出的内容

    2024年02月15日
    浏览(33)
  • 上传文件提示java.io.IOException: java.io.FileNotFoundException:(系统找不到指定的路径。)

    关键信息: java.io.IOException: java.io.FileNotFoundException: C:UsersbrendonAppDataLocalTemptomcat.6510816303036534023.8099workTomcatlocalhostROOTinvoiceoriginalfile2023-02-1373432e18330dec9a05af2e74d068bfba83e0a88d.pdf (系统找不到指定的路径。) Caused by: java.io.FileNotFoundException: C:UsersbrendonAppDataLocalTemptomcat

    2024年02月12日
    浏览(41)
  • java修改properties文件内容(读取、修改、追加)

    PropertiesConfiguration 是 Apache 帮我们实现按照文件的顺序读取properties文件的类,Properties类能做的它都能做。不仅如此,他还有许多方便实用的附加功能。 工具类: 除此之外,还可以 propsConfig.setEncoding(\\\"utf-8\\\") 设置编码。 需要的maven依赖:

    2024年02月06日
    浏览(42)
  • springboot异步文件上传获取输入流提示找不到文件java.io.FileNotFoundException

    springboot上传文件,使用异步操作处理上传的文件数据,出现异常如下: 这个是在异步之后使用传过来的MultipartFile对象尝试调用getInputStream方法发生的异常。 java.io.FileNotFoundException: C:UsersAdministratorAppDataLocalTemptomcat.8082.9218483334936865663workTomcatlocalhostsdBusinessOnlineSchoolupl

    2024年02月12日
    浏览(53)
  • 【Java】读取 springboot 配置文件内容的几种方法

    Spring Boot 是一个非常流行的 Java Web 开发框架,它提供了大量的便捷功能和特性,其中读取配置文件是其中的一项重要功能。Spring Boot 支持多种方式读取配置文件,本文将介绍 Spring Boot 读取配置文件的原理和常用方法。 Spring Boot 读取配置文件的原理是通过 Spring Boot 的自动配置

    2024年02月15日
    浏览(69)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包