java创建文件夹及TXT文件并写入
最近需要做一个云存档的模块,刚开始创建的时候经常报找不到路径,记录一下我感觉不错的写法
测试类
package com.xzly; import org.junit.Test; import org.springframework.boot.test.context.SpringBootTest; import java.io.File; import java.io.FileOutputStream; import java.io.IOException; import java.nio.charset.StandardCharsets; / * java创建文件夹和文件并写入内容 */ @SpringBootTest public class CreateTxtTest {
@Test public void createTxt(){
//str字符串作为前端传来的参数 String str = "Name=test1&Index=2&Type=Save_KingData_16&Obj_Str={aoe,ivu}"; try {
//根据&分割字符串 String[] params = str.split("[: & ;]"); //catalog、Name、Index做为文件夹,Type为txt文件名 String Name = params[0].substring(5); String Index = "Save-" + params[1].substring(6); String Type = params[2].substring(5) + ".txt"; //要写入内容 String Obj_Str = params[3].substring(8); String catalog = "D://cloudsArchive/"; //指定路径如果没有则创建并添加 File file = new File(catalog + Name + "/" + Index + "/" + Type); //获取父目录 File fileParent = file.getParentFile(); //判断是否存在,如果不存在则创建 if (!fileParent.exists()) {
fileParent.mkdirs(); } //根据抽象路径创建一个新的空文件 file.createNewFile(); 判断文件是否存在 if (file.exists()) {
//创建一个用于操作文件的字节输出流对象,创建就必须明确数据存储目的地 FileOutputStream fos = new FileOutputStream(file); //写入 fos.write(Obj_Str.getBytes(StandardCharsets.UTF_8)); System.out.println("成功!!!"); //刷新并关闭流 fos.flush(); fos.close(); } }catch (IOException e){
e.printStackTrace(); } } }
项目中代码

效果图


希望对大家都有所帮助,共同进步!!!
发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/232435.html原文链接:https://javaforall.net
