2013-09-04 12:56 99933人阅读 评论(7) 收藏 举报
 分类:
JAVA基础(10) 

版权声明:本文为博主原创文章,未经博主允许不得转载。

  1. 创建文件和目录的关键技术点如下:
  1. <pre name="code" class="java">    1、File类的createNewFile根据抽象路径创建一个新的空文件,当抽象路径制定的文件存在时,创建失败
  2. 2、File类的mkdir方法根据抽象路径创建目录
  3. 3、File类的mkdirs方法根据抽象路径创建目录,包括创建必需但不存在的父目录
  4. 4、File类的createTempFile方法创建临时文件,可以制定临时文件的文件名前缀、后缀及文件所在的目录,如果不指定目录,则存放在系统的临时文件夹下。
  5. 5、除mkdirs方法外,以上方法在创建文件和目录时,必须保证目标文件不存在,而且父目录存在,否则会创建失败
  6. 文件及文件夹(目录)命名的时候,不允许/  \ : ? *等字符
  7. 实例演示

  1. package book.io;
  2. import java.io.File;
  3. import java.io.IOException;
  4. public class CreateFileUtil {
  5. public static boolean createFile(String destFileName) {
  6. File file = new File(destFileName);
  7. if(file.exists()) {
  8. System.out.println("创建单个文件" + destFileName + "失败,目标文件已存在!");
  9. return false;
  10. }
  11. if (destFileName.endsWith(File.separator)) {
  12. System.out.println("创建单个文件" + destFileName + "失败,目标文件不能为目录!");
  13. return false;
  14. }
  15. //判断目标文件所在的目录是否存在
  16. if(!file.getParentFile().exists()) {
  17. //如果目标文件所在的目录不存在,则创建父目录
  18. System.out.println("目标文件所在目录不存在,准备创建它!");
  19. if(!file.getParentFile().mkdirs()) {
  20. System.out.println("创建目标文件所在目录失败!");
  21. return false;
  22. }
  23. }
  24. //创建目标文件
  25. try {
  26. if (file.createNewFile()) {
  27. System.out.println("创建单个文件" + destFileName + "成功!");
  28. return true;
  29. } else {
  30. System.out.println("创建单个文件" + destFileName + "失败!");
  31. return false;
  32. }
  33. } catch (IOException e) {
  34. e.printStackTrace();
  35. System.out.println("创建单个文件" + destFileName + "失败!" + e.getMessage());
  36. return false;
  37. }
  38. }
  39. public static boolean createDir(String destDirName) {
  40. File dir = new File(destDirName);
  41. if (dir.exists()) {
  42. System.out.println("创建目录" + destDirName + "失败,目标目录已经存在");
  43. return false;
  44. }
  45. if (!destDirName.endsWith(File.separator)) {
  46. destDirName = destDirName + File.separator;
  47. }
  48. //创建目录
  49. if (dir.mkdirs()) {
  50. System.out.println("创建目录" + destDirName + "成功!");
  51. return true;
  52. } else {
  53. System.out.println("创建目录" + destDirName + "失败!");
  54. return false;
  55. }
  56. }
  57. public static String createTempFile(String prefix, String suffix, String dirName) {
  58. File tempFile = null;
  59. if (dirName == null) {
  60. try{
  61. //在默认文件夹下创建临时文件
  62. tempFile = File.createTempFile(prefix, suffix);
  63. //返回临时文件的路径
  64. return tempFile.getCanonicalPath();
  65. } catch (IOException e) {
  66. e.printStackTrace();
  67. System.out.println("创建临时文件失败!" + e.getMessage());
  68. return null;
  69. }
  70. } else {
  71. File dir = new File(dirName);
  72. //如果临时文件所在目录不存在,首先创建
  73. if (!dir.exists()) {
  74. if (!CreateFileUtil.createDir(dirName)) {
  75. System.out.println("创建临时文件失败,不能创建临时文件所在的目录!");
  76. return null;
  77. }
  78. }
  79. try {
  80. //在指定目录下创建临时文件
  81. tempFile = File.createTempFile(prefix, suffix, dir);
  82. return tempFile.getCanonicalPath();
  83. } catch (IOException e) {
  84. e.printStackTrace();
  85. System.out.println("创建临时文件失败!" + e.getMessage());
  86. return null;
  87. }
  88. }
  89. }
  90. public static void main(String[] args) {
  91. //创建目录
  92. String dirName = "D:/work/temp/temp0/temp1";
  93. CreateFileUtil.createDir(dirName);
  94. //创建文件
  95. String fileName = dirName + "/temp2/tempFile.txt";
  96. CreateFileUtil.createFile(fileName);
  97. //创建临时文件
  98. String prefix = "temp";
  99. String suffix = ".txt";
  100. for (int i = 0; i < 10; i++) {
  101. System.out.println("创建了临时文件:"
  102. + CreateFileUtil.createTempFile(prefix, suffix, dirName));
  103. }
  104. //在默认目录下创建临时文件
  105. for (int i = 0; i < 10; i++) {
  106. System.out.println("在默认目录下创建了临时文件:"
  107. + CreateFileUtil.createTempFile(prefix, suffix, null));
  108. }
  109. }
  110. }
  111. 输出结果:
  112. 创建目录D:/work/temp/temp0/temp1成功!
  113. 目标文件所在目录不存在,准备创建它!
  114. 创建单个文件D:/work/temp/temp0/temp1/temp2/tempFile.txt成功!
  115. 创建了临时文件:D:work emp emp0 emp1 emp5171.txt
  116. 创建了临时文件:D:work emp emp0 emp1 emp5172.txt
  117. 创建了临时文件:D:work emp emp0 emp1 emp5173.txt
  118. 创建了临时文件:D:work emp emp0 emp1 emp5174.txt
  119. 创建了临时文件:D:work emp emp0 emp1 emp5175.txt
  120. 创建了临时文件:D:work emp emp0 emp1 emp5176.txt
  121. 创建了临时文件:D:work emp emp0 emp1 emp5177.txt
  122. 创建了临时文件:D:work emp emp0 emp1 emp5178.txt
  123. 创建了临时文件:D:work emp emp0 emp1 emp5179.txt
  124. 创建了临时文件:D:work emp emp0 emp1 emp5180.txt
  125. 在默认目录下创建了临时文件:C:Documents and SettingsAdministratorLocal SettingsTemp emp5181.txt
  126. 在默认目录下创建了临时文件:C:Documents and SettingsAdministratorLocal SettingsTemp emp5182.txt
  127. 在默认目录下创建了临时文件:C:Documents and SettingsAdministratorLocal SettingsTemp emp5183.txt
  128. 在默认目录下创建了临时文件:C:Documents and SettingsAdministratorLocal SettingsTemp emp5184.txt
  129. 在默认目录下创建了临时文件:C:Documents and SettingsAdministratorLocal SettingsTemp emp5185.txt
  130. 在默认目录下创建了临时文件:C:Documents and SettingsAdministratorLocal SettingsTemp emp5186.txt
  131. 在默认目录下创建了临时文件:C:Documents and SettingsAdministratorLocal SettingsTemp emp5187.txt
  132. 在默认目录下创建了临时文件:C:Documents and SettingsAdministratorLocal SettingsTemp emp5188.txt
  133. 在默认目录下创建了临时文件:C:Documents and SettingsAdministratorLocal SettingsTemp emp5189.txt
  134. 在默认目录下创建了临时文件:C:Documents and SettingsAdministratorLocal SettingsTemp emp5190.txt

java创建文件和目录的更多相关文章

  1. JavaIO流程--创建文件和目录的实例

    *创建函数:  *public boolean createNewFile():创建文件 本文假设存在.不创造(转让file.createNewFile()返回false)  *public bool ...

  2. linux下创建文件与目录时默认被赋予了什么样的权限?

    当我们创建一个新的文件或目录的时候,他的默认权限是什么? umask--指定当前使用者在创建文件或目录的时候默认的权限值 [root@iZ288fgkcpkZ default]# umask [roo ...

  3. LINUX创建文件和目录的默认权限

    在linux中,一位用户在创建文件和目录时,对其具有的权限都是一样的,如需更改,需要chmod命令做相应的更改.为什么?其实是权限掩码起作用了. 权限掩码的作用就是规范初创文件和目录时候的权限设置,免 ...

  4. 用IO流中的File类来创建文件及目录

    题目如下: 设计一个命令窗口程序,要求按照如下的格式显示 例如:===利用命令窗口完成文件的操作===(1)创建目录 (2)创建文件 (3)删除目录 (4)删除文件 ===现在正在做创建目录的操作== ...

  5. JAVA 创建文件和文件夹,删除文件和文件夹的实用工具

    package com.file; import java.io.File; import java.io.IOException; //创建新文件和目录 public class CCRDFile ...

  6. JAVA 创建文件和文件夹,删除文件和文件夹的实用工具

    package com.file; import java.io.File; import java.io.IOException; //创建新文件和目录 public class CCRDFile ...

  7. 总结java创建文件夹的4种方法及其优缺点-JAVA IO基础总结第三篇

    本文是Java IO总结系列篇的第3篇,前篇的访问地址如下: 总结java中创建并写文件的5种方式-JAVA IO基础总结第一篇 总结java从文件中读取数据的6种方法-JAVA IO基础总结第二篇 ...

  8. Java 创建文件夹和文件,字符串写入文件,读取文件

    两个函数如下: TextToFile(..)函数:将字符串写入给定文本文件: createDir(..)函数:创建一个文件夹,有判别是否存在的功能. public void TextToFile(fi ...

  9. 【每天一个Linux命令】19. 创建文件夹目录命令mkdir

    命令用途 mkdir 命令用来创建指定的名称的目录 使用说明 1.  创建目录的用户在当前目录中具有写权限 2. 指定的目录名不能是当前目录中已有的目录. 命令实例 0. 帮助文件 bixiaopen ...

随机推荐

  1. javascript函数setInterval和setTimeout的使用区别详解

    setTimeout和setInterval的使用 这两个方法都可以用来实现在一个固定时间段之后去执行JavaScript.不过两者各有各的应用场景. 方 法 实际上,setTimeout和setIn ...

  2. C#相关开发视频

    Quickly Generate C# Classes from JSON Responses .NET Compiler Platform ("Roslyn") for the ...

  3. 使用maven给spring项目打可直接运行的jar包(配置文件内置外置的打法)

    从网上看过许多打jar包的例子,大多是将配置文件打进jar包的.经过本人一番研究,终于搞清楚了怎样将jar包的配置文件外置. 废话不说,直接上spring的pom.xml的配置文件. <proj ...

  4. Java程序设计求出岁数

    题目:我年龄的立方是个4位数.我年龄的4次方是个6位数.这10个数字正好包含了从0到9这10个数字,每个都恰好出现1次,求出我今年几岁. 直接拷贝运行就可以了. public class Age { ...

  5. Fabio

    Fabio 安装和简单使用 Fabio(Go 语言):https://github.com/eBay/fabio Fabio 是一个快速.现代.zero-conf 负载均衡 HTTP(S) 路由器,用 ...

  6. [LeetCode] Graph Valid Tree 图验证树

    Given n nodes labeled from 0 to n - 1 and a list of undirected edges (each edge is a pair of nodes), ...

  7. [LeetCode] Summary Ranges 总结区间

    Given a sorted integer array without duplicates, return the summary of its ranges. For example, give ...

  8. _web基础_servlet基础

    一.了解Servlet的概念 Servlet定义:Servlet是基于Java技术的Web组件,由容器管理并产生动态的内容.Servlet引擎作为WEB服务器的扩展提供支持Servlet的功能.Ser ...

  9. java-读取javabean类的set方法并设值

    /** * 新反射实例化模型 * @param filenamepath * @return */ public static Object newIntence(String filenamepat ...

  10. css 固定HTML表格的宽度

    在网页中插件表格时,就算你有时定义了宽度,默认的也会根据里面内容的来自动拉伸.有时候自动拉伸是好,但是如果你表格里面的内容太长,表格就会拉伸的特别难看. 像下面的表格,正常的显示应该如下: 但是如果里 ...