项目里读取读片或者文件的方法

方法一:推荐使用此方法

package com.quanjude.test;

import java.io.FileOutputStream;
import java.io.InputStream;
import java.io.OutputStream;

public class Test {
    public static void main(String[] args) throws Exception{

        // 这里就是读取resource目录下的static文件里的 名为“红色圆.png”的图片
        InputStream inputStream = Thread.currentThread().getContextClassLoader().getResourceAsStream("static/红色圆.png");
        OutputStream outputStream=new FileOutputStream("d:\\Users\\hhh\\Desktop\\复制的图片.png");
        int len;
        byte[] bytes=new byte[8192];
        while ((len=inputStream.read(bytes,0,8192))!=-1){
            outputStream.write(bytes,0,len);
        }
        outputStream.close();
        inputStream.close();
    }
}

方法二:

不推荐,因为测试环境可以写死,到了生产环境linux系统,这个文件的具体位置不一定知道在哪里

package com.quanjude.test;

import org.springframework.util.ResourceUtils;

import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.OutputStream;
import java.util.ResourceBundle;

public class Test {
    public static void main(String[] args) throws Exception{

        // 这里就是读取resource目录下名为 image.properties的文件,再读取文件里的address的值,也就是图片路径
        ResourceBundle bundle = ResourceBundle.getBundle("image");
        String string = bundle.getString("address");
        File file = ResourceUtils.getFile(string);
        
        FileInputStream inputStream=new FileInputStream(file);
        OutputStream outputStream=new FileOutputStream("d:\\Users\\hhh\\Desktop\\复制的图片.png");
        int len;
        byte[] bytes=new byte[8192];
        while ((len=inputStream.read(bytes,0,8192))!=-1){
            outputStream.write(bytes,0,len);
        }
        outputStream.close();
        inputStream.close();
    }
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值