码迷,mamicode.com
首页 > Windows程序 > 详细

c# 文件与流

时间:2017-12-24 12:45:07      阅读:387      评论:0      收藏:0      [点我收藏+]

标签:length   目录名   space   私有字段   使用   color   对象   操作   字符   

1、创建和删除目录

  在c#中涉及到输入、输出(i/o)相关操作的API都被放在System.IO命名空间下,或者子命令System.IO.IsolatedStoorage中。对目录进行操作可以使用Directory类和DirectoryInfo类。Directory类,提供了一些便捷的方法可以帮助开发人员轻松的对目录进行操作。DirectoryInfo类的功能和Directory类相似,公开了更多的成员以获得目录信息。

  使用两个按钮实现,文件目录的创建和删除

技术分享图片

//引入输入、输出命名空间。
using System.IO;

namespace WindowsFormsApp1
{
    public partial class Form1 : Form
    {  
           //声明两个私有字段
            DirectoryInfo dirInfo = null;//操作目录的对象
            string dirName = string.Empty;//用于存储目录名称
            
        public Form1()
        {
            InitializeComponent();
          
        }
        //创建按钮Click
        private void button1_Click(object sender, EventArgs e)
        {
            //判断输入是否为空
            if(string .IsNullOrWhiteSpace(textBox1.Text))
            {
                //打印提示语句
                MessageBox.Show("IN err");
                return;
            }
            dirName = textBox1.Text.Trim();//从当前System.String 对象移除所有空白字符和尾部空白字符 保存在目录名中
            dirInfo = new DirectoryInfo(dirName);//实例dirInfo
            //判断目录是否存在
            if(dirInfo.Exists)//如果目录存在,则为 true;否则为 false。
            {
                dirInfo.Delete();//如果存在删除目录
            }
            //创建目录
            dirInfo.Create();
            MessageBox.Show("目录" + dirName + "创建成功");

        }

        private void Form1_Load(object sender, EventArgs e)
        {

        }
        //删除按钮Click
        private void button2_Click(object sender, EventArgs e)
        {
            if(dirInfo!=null && !string.IsNullOrWhiteSpace(dirName))
            {
                dirInfo.Delete();
                dirInfo = null;
            }
        }
    }
}

注意:如果希望在指定的目录下创建目录,可以指定绝对路径。

2、创建文件和删除文件

  与目录操作相似,对于文件操作,同样有两个类可以选择。File类和FileInfo类。

技术分享图片

  

//引入文件命名空间
using System.IO;
namespace WindowsFormsApp1
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }
        string fileName = string.Empty;//用于存放新文件的名字
        private void Form1_Load(object sender, EventArgs e)
        {

        }
        //Create Click Button function
        private void Create_Click(object sender, EventArgs e)
        {
            //判断文件名是否为空
            if(string.IsNullOrWhiteSpace(Name.Text))
            {
                MessageBox.Show("文件名为空");
                return;
            }
            fileName = Name.Text;
            //如果文件已存在,删除
            if (File.Exists(fileName))//确定指定文件是否存在
            {
                File.Delete(fileName);
            }
            var fs = File.Create(fileName);//创建文件
            //向文件写入3000字节
            Random rand = new Random();
            byte[] buf = new byte[3000];
            rand.NextBytes(buf);//使用随机数填充指定字节数组元素
            fs.Write(buf, 0, buf.Length);//将字节快写去文件流
            MessageBox.Show("创建"+fileName+"成功");
            fs.Dispose();//释放资源,Syst.IO.Stream使用的资源
        }

        private void Delete_Click(object sender, EventArgs e)
        {
            if(File.Exists(fileName))
            {
                File.Delete(fileName);//删除文件
            }
        }
    }
}

 

  

c# 文件与流

标签:length   目录名   space   私有字段   使用   color   对象   操作   字符   

原文地址:http://www.cnblogs.com/hjxzjp/p/8097605.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!