文件夹,文件这是常见的,怎么创建?要不要先判断是否存在?非常非常基础的知识点。

代码

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.IO; namespace dazilianxi.wenjian
{
public class WenJianLei
{
const string main_Dir = @"D:/WenTest";
const string wenjianpath = @"D:\WenTest\second.txt";
//根据文件夹全路径创建文件夹
public static void CreateDir(string subdir)
{
string path = main_Dir + "/" + subdir;
if (Directory.Exists(path))
{
Console.WriteLine("此文件夹已经存在,无需创建!");
}
else
{
Directory.CreateDirectory(path);
Console.WriteLine(path+" 创建成功!");
}
}
//根据文件夹名称创建文件夹
public static void CreateNameDir(string name)
{
if(name.Length!=)
{
CreateDir(name);
}
else
{
Console.WriteLine("必须指定文件夹名称,才能创建!");
}
} public static void CreateWenJian()
{
if (!File.Exists(wenjianpath))
{
Console.WriteLine("文件创建成功!");
TextWriter tw = new StreamWriter(wenjianpath);
tw.WriteLine("创建完文件加的第一行~~");
tw.Close();
}
else
{
TextWriter tw = new StreamWriter(wenjianpath,true);
tw.WriteLine("已经存在文件,再加一行吧~~");
tw.Close();
}
}
//文件大小计算
public static void CreateMoreSize()
{
long size = GetDirectoryLength(@"D:\WenTest");
if (!File.Exists(wenjianpath))
{
if (size <= )
{
TextWriter tw = new StreamWriter(wenjianpath);
tw.WriteLine("创建完文件加的第一行~~");
tw.Close();
}
else
{
Console.WriteLine("无法创建,已经超过限定大小了~~");
} }
else
{
TextWriter tw = new StreamWriter(wenjianpath, true);
tw.WriteLine("已经存在文件,再加一行吧~~");
tw.Close();
}
}
public static long GetDirectoryLength(string path)
{
if (!Directory.Exists(path))
{
return ;
} long size = ; //遍历指定路径下的所有文件
DirectoryInfo di = new DirectoryInfo(path);
foreach (FileInfo fi in di.GetFiles())
{
size += fi.Length;
} //遍历指定路径下的所有文件夹
DirectoryInfo[] dis = di.GetDirectories();
if (dis.Length > )
{
for (int i = ; i < dis.Length; i++)
{
size += GetDirectoryLength(dis[i].FullName);
}
} return size;
}
}
}

调用代码

 // wenjian.WenJianLei.CreateNameDir("mytest1");
//wenjian.WenJianLei.CreateWenJian();
wenjian.WenJianLei.CreateMoreSize();

来源:http://www.cnblogs.com/darrenji/p/3652062.html

http://www.cnblogs.com/hqbhonker/p/3494042.html

(C#基础)创建文件,文件夹的更多相关文章

  1. Java 基础【13】 文件(文件夹) 创建和删除

    使用 java.io.file 创建文件(文件夹),算是 java 最基础的知识,但实战项目中还是需要知晓细节. 比如 File 类中的 mkdir() 和 mkdirs() 的区别. JDK API ...

  2. Java 基础【16】 文件(文件夹) 创建和删除

    使用 java.io.file 创建文件(文件夹),算是 java 最基础的知识,但实战项目中还是需要知晓细节. 比如 File 类中的 mkdir() 和 mkdirs() 的区别. JDK API ...

  3. Unity中一键创建常用文件夹

    Unity中一键创建常用文件夹 说明 项目测试版本Unity5.3. 这个一个小工具:功能非常简单,就是一键给新建工程添加所有文件夹.到此结束. 但是具体咋操作呢? 与把大象装进冰箱一样,三步,下载代 ...

  4. JS读取/创建本地文件及目录文件夹的方法

    原文链接:http://www.cnblogs.com/ayan/archive/2013/04/22/3036072.html 注:以下操作只在IE下有效! Javascript是网页制作中离不开的 ...

  5. MFC 如何创建浏览文件夹的对话框

    如何创建浏览文件夹的对话框 如何创建浏览文件夹的对话框 CString CXXXXDlg::GetOpenfolderPath() { BROWSEINFO bi; ZeroMemory(&b ...

  6. 命令行创建畸形文件夹+畸形目录管理工具(DeformityPath)

    命令行创建畸形文件夹: 第一步:在运行中输入cmd,回车,打开命令行窗口 第二步:在命令行窗口中切换到想要建立文件夹的硬盘分区,如D盘(输入d:) 第三步:输入 MD 123..\ 回车,注意文件夹名 ...

  7. Java中创建操作文件和文件夹的工具类

    Java中创建操作文件和文件夹的工具类 FileUtils.java import java.io.BufferedInputStream; import java.io.BufferedOutput ...

  8. 通过jcifs.jar 创建远程文件和文件夹

    package com.project.remoteUrl;import java.io.File;import java.io.InputStream;import java.io.OutputSt ...

  9. eclipse创建一个文件夹

    如何给eclipse创建一个文件夹,便于项目的管理:有时我们的eclipse中会有很多项目的,有的是公司的如Project1,Project2,Project3....还有的呢, 也可能是自己平时做的 ...

随机推荐

  1. C# 图片和64位编码的转换

    /* 将图片转换为64位编码 */ //找到文件夹 System.IO.DirectoryInfo dd = new System.IO.DirectoryInfo("C://qq" ...

  2. Python3基础 __len__,__getitem__ 记录列表中元素访问的次数 定制不可变序列,下标字典

             Python : 3.7.0          OS : Ubuntu 18.04.1 LTS         IDE : PyCharm 2018.2.4       Conda ...

  3. Python跨平台打包

    对于pyinstaller,可以完成在windows,linux,和mac下的python脚本编译,生成exe,elf,.app文件: 1.使用方法: 在pyinstaller的官网上下载,一般是源码 ...

  4. linux下安装与运行docker

    写者环境: 1.lsb_release -a hello@hello:~$ lsb_release -aNo LSB modules are available.Distributor ID: Ubu ...

  5. php跨域

    <?php header('Content-type:text/html; charset="utf-8"'); $url = 'http://10.32.41.194:80 ...

  6. C#学习笔记(十六):索引器和重载运算符

    二维数组如何映射到一维数组 重载运算符 1.算术运算符 2.关系运算符, < 和 > 成对重载 using System; using System.Collections.Generic ...

  7. UVa 10570 外星人聚会

    https://vjudge.net/problem/UVA-10570 题意:输入1~n的排列,每次可以交换两个整数,求出最少交换次数使之变成有序的环状序列. 思路:主要的解题方法就是寻找置换环,举 ...

  8. python闭包closure

    在讨论闭包之前,先总结一下python的命名空间namespace,一般的语言都是通过namespace来识别名字标识,无论是变量,对象,函数等等.python划分3个名字空间层次,local:局部, ...

  9. bnu 51636 Squared Permutation 线段树

    Squared Permutation Time Limit: 6000ms Memory Limit: 262144KB 64-bit integer IO format: %lld      Ja ...

  10. JavaScript中对象数组 作业题目以及作业

    var BaiduUsers = [], WechatUsers = []; var User = function(id, name, phone, gender, age, salary) { t ...