(C#基础)创建文件,文件夹
文件夹,文件这是常见的,怎么创建?要不要先判断是否存在?非常非常基础的知识点。
代码
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#基础)创建文件,文件夹的更多相关文章
- Java 基础【13】 文件(文件夹) 创建和删除
使用 java.io.file 创建文件(文件夹),算是 java 最基础的知识,但实战项目中还是需要知晓细节. 比如 File 类中的 mkdir() 和 mkdirs() 的区别. JDK API ...
- Java 基础【16】 文件(文件夹) 创建和删除
使用 java.io.file 创建文件(文件夹),算是 java 最基础的知识,但实战项目中还是需要知晓细节. 比如 File 类中的 mkdir() 和 mkdirs() 的区别. JDK API ...
- Unity中一键创建常用文件夹
Unity中一键创建常用文件夹 说明 项目测试版本Unity5.3. 这个一个小工具:功能非常简单,就是一键给新建工程添加所有文件夹.到此结束. 但是具体咋操作呢? 与把大象装进冰箱一样,三步,下载代 ...
- JS读取/创建本地文件及目录文件夹的方法
原文链接:http://www.cnblogs.com/ayan/archive/2013/04/22/3036072.html 注:以下操作只在IE下有效! Javascript是网页制作中离不开的 ...
- MFC 如何创建浏览文件夹的对话框
如何创建浏览文件夹的对话框 如何创建浏览文件夹的对话框 CString CXXXXDlg::GetOpenfolderPath() { BROWSEINFO bi; ZeroMemory(&b ...
- 命令行创建畸形文件夹+畸形目录管理工具(DeformityPath)
命令行创建畸形文件夹: 第一步:在运行中输入cmd,回车,打开命令行窗口 第二步:在命令行窗口中切换到想要建立文件夹的硬盘分区,如D盘(输入d:) 第三步:输入 MD 123..\ 回车,注意文件夹名 ...
- Java中创建操作文件和文件夹的工具类
Java中创建操作文件和文件夹的工具类 FileUtils.java import java.io.BufferedInputStream; import java.io.BufferedOutput ...
- 通过jcifs.jar 创建远程文件和文件夹
package com.project.remoteUrl;import java.io.File;import java.io.InputStream;import java.io.OutputSt ...
- eclipse创建一个文件夹
如何给eclipse创建一个文件夹,便于项目的管理:有时我们的eclipse中会有很多项目的,有的是公司的如Project1,Project2,Project3....还有的呢, 也可能是自己平时做的 ...
随机推荐
- poj 2773 Happy 2006 - 二分答案 - 容斥原理
Time Limit: 3000MS Memory Limit: 65536K Total Submissions: 11161 Accepted: 3893 Description Two ...
- 安装VS提示系统找不到指定路径
解决办法:删除C:\ProgramData\Package Cache快捷方式
- MVC 视图的简单学习
视图学习第一阶段:http://www.cnblogs.com/meetyy/p/3464432.html 视图学习第二阶段:http://www.cnblogs.com/meetyy/p/34665 ...
- luogu3935 Calculating
标题也许叫整除分块吧 求\(1\)到\(n\)因数的个数\(\sum_{i=1}^n(\sum_{d|n}1)\) 范围\(1e14\)时限3s \(n\sqrt{n}\)的暴力铁定gg 分开考虑 \ ...
- SPOJ - POLYNOM Polynomial(数论乱搞)题解
题意 :给你n个数,问你是否存在一个多项式(最多三次方)满足f(i)= xi. 思路:讲一个神奇的思路: x3 - (x - 1)3 = 3x2 - 3x + 1 x2 - (x - 1)2 = 2x ...
- 【转】Windows Server 2008 R2怎样设置自动登陆
Windows Server 2008 R2是一款服务器操作系统,提升了虚拟化.系统管理弹性.网络存取方式,以及信息安全等领域的应用,Windows Server 2008 R2也是第一个只提供64位 ...
- 【Django】【待解决问题】
1. from Crypto.Cipher import AES File "/Library/Frameworks/Python.framework/Versions/3.5/lib/py ...
- vue v-model 表单控件绑定
v-model 指令在表单控件元素上创建双向数据绑定,下面一一进行示例解释. 1.v-model 双向绑定文本 <!DOCTYPE html> <html> <head ...
- 洛谷P2777 [AHOI2016初中组]自行车比赛
本文版权归ljh2000和博客园共有,欢迎转载,但须保留此声明,并给出原文链接,谢谢合作. 本文作者:ljh2000 作者博客:http://www.cnblogs.com/ljh2000-jump/ ...
- c++ 容器元素填充(fill)
#include <iostream> // cout #include <algorithm> // fill #include <vector> // vect ...