本文测试System.IO命名空间下的类,在不存在的路径下创建文件夹和文件的效果:

首先测试创建文件夹:

System.IO.Directory.CreateDirectory(@"C:\A\B");

上面代码中如果文件夹"C:\A"不存在,那么Directory.CreateDirectory方法也不会报错,Directory.CreateDirectory方法会先创建"C:\A"文件夹,再创建"C:\A\B"文件夹。说明Directory.CreateDirectory方法不要求参数路径上的文件夹都存在,Directory.CreateDirectory方法会依次创建参数路径中的文件夹,并且多次重复创建参数路径中的文件夹"C:\A\B"也不会报错(也就是说,如果文件夹"C:\A\B"本来就已经存在,使用Directory.CreateDirectory方法再次创建文件夹"C:\A\B"也不会报错)。

然后测试创建文件:

System.IO.File.Create(@"C:\A\demo.txt").Dispose();

上面代码中如果文件夹"C:\A"不存在,那么File.Create方法会抛出异常:

System.IO.DirectoryNotFoundException:“Could not find a part of the path 'C:\A\demo.txt'.”

说明File.Create方法必须要求参数路径中的文件夹存在,否则会报错。

然后测试移动文件:

System.IO.File.Move(@"C:\A\demo.txt", @"F:\A\demo.txt");

上面代码中如果文件夹"F:\A"不存在,那么File.Move方法会抛出异常:

System.IO.DirectoryNotFoundException:“Could not find a part of the path.”

说明File.Move方法必须要求第二个参数destFileName路径中的文件夹存在,否则会报错,当然第一个参数sourceFileName路径中的文件也必须存在。

然后测试复制文件:

System.IO.File.Copy(@"C:\A\demo.txt", @"F:\A\demo.txt");

上面代码中如果文件夹"F:\A"不存在,那么File.Copy方法会抛出异常:

System.IO.DirectoryNotFoundException:“Could not find a part of the path 'F:\A\demo.txt'.”

说明File.Copy方法必须要求第二个参数destFileName路径中的文件夹存在,否则会报错,当然第一个参数sourceFileName路径中的文件也必须存在。

System.IO在不存在的路径下创建文件夹和文件的测试的更多相关文章

  1. IO流-获取指定目录下文件夹和文件对象【File类】

    一.运用File类实现获取指定目录下文件夹和文件对象 1.File类 2.方法: 获取文件绝对路径 :getAbsolutePath 案例: import java.io.File; /** * 获取 ...

  2. php--------删除一个路径下的所有文件夹和文件

    php遍历一个文件夹内的所有文件和文件夹,并删除所有文件夹和子文件夹下的所有文件的代码,通过递归方式实现达到清空一个目录的效果,代码简单实用. 也适合在thinkphp中清理缓存,在thinkphp中 ...

  3. java打印出某一指定路径下的文件夹内的所有子文件夹和文件,并区分开来

    public class printoutFile { public static void main(String[] args) { printFile(new File("D:\\te ...

  4. 解决:在php配置文件路径下,添加php.ini之后,测试页面无法显示

    安装完php之后,通常情况下,会在网站目录下创建一个.php的文件,来查看php安装过程中的参数配置,脚本的内容很简单: <? phpinfo(); ?> 通常情况下,如果能顺利安装下来不 ...

  5. 遍历、显示ftp下的文件夹和文件信息

    今天做了通过ftp读取ftp根目录下的所有文件夹和文件,嵌套文件夹查询,总共用到了一下代码: 1.FtpFile_Directory package com.hs.dts.web.ftp; impor ...

  6. java 查询路径中所有文件夹和文件的名称,支持文件名模糊查询

    java 查询路径中所有文件夹和文件的名称,支持文件名模糊查询 有时候我们遇到需要查询服务器或者本机某个路径下有哪些文件?或者根据文件名称模糊搜索文件,那么就可以使用本方法:可以获取某个路径下所有文件 ...

  7. java-IO流(File对象-深度遍历指定目录下的文件夹和文件)

    需求:遍历这个树状结构 File(String pathname) '\\'为了转义'\' // 通过抽象路径pathname 创建一个新的文件或者目录 File parent = new File( ...

  8. java基础 File与递归练习 使用文件过滤器筛选将指定文件夹下的小于200K的小文件获取并打印按层次打印(包括所有子文件夹的文件) 多层文件夹情况统计文件和文件夹的数量 统计已知类型的数量 未知类型的数量

    package com.swift.kuozhan; import java.io.File; import java.io.FileFilter; /*使用文件过滤器筛选将指定文件夹下的小于200K ...

  9. C#读取某一文件夹下的所有文件夹和文件

    static List<string> list = new List<string>();//定义list变量,存放获取到的路径 /// <summary> // ...

随机推荐

  1. Java开发知识之Java数组

    Java开发知识之Java数组 一丶数组简介 首先,不管是Java 还是 C++ 还是其它语言.都有数组. (有可能叫法不同) 数组简而言之就是存储一段连续相同数据类型的数据结构 在Java中数组可以 ...

  2. mybatis和hibernate的区别

    1. hibernate是全自动,而mybatis是半自动 hibernate完全可以通过对象关系模型实现对数据库的操作,拥有完整的JavaBean对象与数据库的映射结构来自动生成sql.而mybat ...

  3. 大前端的自动化工厂(2)—— SB Family

    原文链接:https://bbs.huaweicloud.com/blogs/53c0c3509b7a11e89fc57ca23e93a89f 我坦白我是标题党,SB只是SCSS-Bourbon的简写 ...

  4. jquery/js知识点收藏

    1]关于页面跳转 "window.location.href"."location.href"是本页面跳转 "parent.location.href ...

  5. Apollo配置中心动态刷新日志级别

    Apollo配置中心动态刷新日志级别 添加次配置后,当在apollo上面调整日志级别不需要重启服务器,马上就能生效 /** * 结合apollo动态刷新日志级别 * @author: nj * @da ...

  6. 中间件(3)NoSQL

    NoSQL最常见的解释是non-relational,或者not only SQL,从字段意思上就可以看出,它是指非关系型数据库的统称. NoSQL诞生的背景 随着大型网站分布式架构的发展,使用传统关 ...

  7. Java_设计模式之享元模式

    1.关于享元模式 享元模式有点类似于单例模式,都是只生成一个对象被共享使用.享元模式主要目的就是让多个对象实现共享,减少不会要额内存消耗,将多个对同一对象的访问集中起来,不必为每个访问者创建一个单独的 ...

  8. es6 Symbol类型

    es6 新增了一个原始类型Symbol,代表独一无二的数据 javascript 原来有6中基本类型, Boolean ,String ,Object,Number, null , undefined ...

  9. Win10操作系统下Oracle VM VirtualBox6.0加载磁盘提示“发现无效设置”的解决方法(包括“不能桥接网卡”问题的解决方法)

    自从电脑换成Win10操作系统后,想借助VMBox处理一些事情,但是遇到了不能桥接网卡的问题,还以为是程序坏了,于是卸载重新安装,但是不行.接着又尝试在虚拟机里重新安装操作系统,还是不行. 然后百度了 ...

  10. iOS----------计算一段代码执行时间

    CFAbsoluteTime start = CFAbsoluteTimeGetCurrent(); //在这写入要计算时间的代码 // do something CFAbsoluteTime end ...