Java读取文件和配置文件

读取properties文件

利用java自带的工具类读取配置文件,配置文件放在根目录如下
在这里插入图片描述配置文件内容如下

email.host=smtp.qq.com
email.port=25 
email.from=qiuz567@qq.com
username=qiuz567@qq.com
password=hwozmdipqogldbcb

读取文件的代码如下

import java.util.ResourceBundle;

public class TestA {
    private static final ResourceBundle bundle = ResourceBundle.getBundle("mail");
    private static final String sendFrom = bundle.getString("email.from");
    private static final String username = bundle.getString("username");
    private static final String password = bundle.getString("password");
    private static final String host = bundle.getString("email.host");


    public static void main(String[] args) {
        System.out.println(sendFrom);
        System.out.println(username);
    }
}

读取文件作为流

文件放置如上图所示
以在web端下载为例,需要先将文件读取到服务器内存,代码如下

package com.web;

import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
import java.net.URLEncoder;


@RestController
@RequestMapping("/download")
public class DownloadFile {
    @RequestMapping("excel")
    public String excel(HttpServletResponse response)  {
        InputStream inputStream = DownloadFile.class.getClassLoader().getResourceAsStream("资源导入模板.xls");
        response.setContentType("application/x-download");
        try {
            response.addHeader("Content-Disposition", "attachment;filename=" + URLEncoder.encode("资源导入模板.xls", "UTF-8"));
            OutputStream outputStream = response.getOutputStream();
            byte[] buffer = new byte[1024];
            int i = inputStream.read(buffer);
            while (i != -1){
                outputStream.write(buffer,0,i);
                i = inputStream.read(buffer);
            }
            return "下载成功";
        } catch (IOException e) {
            e.printStackTrace();
        }finally {
            if(inputStream != null){
                try {
                    inputStream.close();
                } catch (IOException e) {
                    e.printStackTrace();
                }
            }
        }
        return "下载失败";
    }

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值