Java 创建文件夹以及文件并写入内容
创建文件夹:
? ? ? ?public void createDir(String dirPath){
? ? ? ? ? ? ? if(!new File(dirPath).exists()){
? ? ? ? ? ? ? ? ??new File(dirPath).mkdir();
? ? ? ? ? ? ? ? }
? ? ? ?}
创建文件: ? ?filePath:文件路径 如:c:/a.txt
? ? ??public static void createFile(String filePath){
? ? ? ? ? ? ? if(!new File(filePath).exists()){
? ? ? ? ? ? ? ? ??new File(filePath).createNewFile();
? ? ? ? ? ? ? ? }
? ? ? ?}
?
? ? ?//在文件中添加内容 ? str写入的内容 ? path存放内容的路径
? ? ?public static void writeTxtFile(String str, String path) {
? ? ? ? ? ?OutputStreamWriter write = null;
? ? ? ? ? ?BufferedWriter writer = null;
? ? ? ? ? ?try {
? ? ? ? ? ? ? ? ? ? ?//CreateTxt ?方法所在类
? ? ? ? ? ? ? ? ? ? ?CreateTxt.createTxtFile(path);
? ? ? ? ? ? ? ? ? ? ?write = new OutputStreamWriter(new FileOutputStream(new File(path)), "gbk");
? ? ? ? ? ? ? ? ? ? ? ? ? //GBK ?内容含有中文
? ? ? ? ? ? ? ? ? ? ?writer = new BufferedWriter(write);
? ? ? ? ? ? ? ? ? ? ?writer.write(str.trim());
? ? ? ? ? ? ? ? ? ? ?writer.close();
? ? ? ? ? ? ? ? ? ? } catch (Exception e) {
? ? ? ? ? ? ? ? ? ? e.printStackTrace();
? ? ? ? ? ? ? ? ? ?}
? ? ? ? ? ? ? ? }
?
碰见了一个问题 谁知道 请解答一下:
? ?例子: 判断D盘中是否存在名称为ab的文件夹 ? ? ?D盘是项目部署的根路径
? ?方法一:new File("d:/ab").exists(); ?------ ?能够验证到是否存在
? ? ?方法二: 遍历d盘 获取其下所有一级文件 ?然后获取名称和 ab比对 ? ?----- 不能够验证
? ? ?我的问题是:方法二 我获取到的D下的文件 不是D盘下实际文件 而是部署项目中的某个文件夹中的文件
? ? ? 如D:\.classpath, D:\.mymetadata ,D:\..project 等文件
? ? ?/**?
* 获取当前项目在部署在服务器的绝对位置?
* ?
* @return?
*/ ?
public static String getContextRealPath() ?
? ? ? ? { ? ? ? // ?HNZBW 该方法所在类
? ?String path = HNZBW.class.getClassLoader().getResource("").getPath();?
? ?int end = path.length() - "WEB-INF/classes/".length(); ?
? ?path = path.substring(1, end);?
? ?path=path.substring(0,2);
? ?return path; ?
} ?