Java文件输出流将数据写入指定目录的文件

1 篇文章 0 订阅

方法一:自己写个输出流方法

直接上代码:

public void writeToFile(String data){
     byte[] sourceByte = data.getBytes();
     String path = "D:/file/";
     String fileName = "test.txt";
     if(null != sourceByte){
         try {
             File file = new File(path+fileName);//文件路径(路径+文件名)
             if (!file.exists()) {   //文件不存在则创建文件,先创建目录
                 File dir = new File(file.getParent());
                 dir.mkdirs();
                 file.createNewFile();
             }
             FileOutputStream outStream = new FileOutputStream(file); //文件输出流将数据写入文件
             outStream.write(sourceByte);
             outStream.close();
         } catch (Exception e) {
             e.printStackTrace();
             // do something
         } finally {
	         // do something
         }
     }
 }

方法二:使用现成的库

先引入commons.io依赖

<dependency>
    <groupId>commons-io</groupId>
    <artifactId>commons-io</artifactId>
    <version>2.6</version>
</dependency>

再利用依赖中的FileUtils中的writeByteArrayToFile方法,代码如下:

public void writeToFileWithCommonsIO(String data){
	String path = "D:/file/"
	String filename = "test.txt";
    try {
        byte[] sourceBytes = data.getBytes("UTF-8");
        if(null!=sourceBytes){
            FileUtils.writeByteArrayToFile( new File(path+filename), sourceBytes,false);//这里的false代表写入的文件是从头开始重新写入,或者理解为清空文件内容后重新写;若为true,则是接着原本文件内容的结尾开始写
        }
    } catch (UnsupportedEncodingException e) {
        // do something
    } catch (IOException e){
        // do something
    } finally {
        // do something
    }
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值