码迷,mamicode.com
首页 > 移动开发 > 详细

C#File类常用的文件操作方法(创建、移动、删除、复制等)

时间:2016-12-16 16:44:43      阅读:317      评论:0      收藏:0      [点我收藏+]

标签:删除文件   u3d   ksh   函数   cap   this   avr   mfs   lvs   

File类,是一个静态类,主要是来提供一些函数库用的。静态实用类,提供了很多静态的方法,支持对文件的基本操作,包括创建,拷贝,移动,删除和 打开一个文件。

File类方法的参量很多时候都是路径path。File的一些方法可以返回FileStream和StreamWriter的对象。可以 和他们配套使用。System.IO.File类和System.IO.FileInfo类

主要提供有关文件的各种操作,在使用时需要引用System.IO命名空间。

一、File类常用的操作方法

1、创建文件方法

//参数1:要创建的文件路径

File.Create(@"D:\Test\Debug1\测试.txt")

2、打开文件方法

 //参数1:要打开的文件路径,参数2:打开的文件方式

File.Open(@"D:\Test\Debug1\测试.txt",FileMode.Append)

3、追加文件方法

 //参数1:要追加的文件路径,参数2:追加的内容

File.AppendAllText(@"D:\Test\Debug1\测试.txt","哈哈");

4、复制文件方法

 //参数1:要复制的源文件路径,参数2:复制后的目标文件路径,参数3:是否覆盖相同文件名
 File.Copy(@"D:\Test\Debug1\测试.txt", @"D:\Test\Debug2\测试1.txt", true);

5、移动文件方法

 //参数1:要移动的源文件路径,参数2:移动后的目标文件路径
File.Move(@"D:\Test\Debug1\测试.txt", @"D:\Test\Debug3\测试2.txt");

6、删除文件方法

 //参数1:要删除的文件路径
 File.Delete(@"D:\Test\Debug1\测试.txt");

7、设置文件属性方法

//参数1:要设置属性的文件路径,参数2:设置的属性类型(只读、隐藏等)
File.SetAttributes(@"D:\Test\Debug1\测试.txt", FileAttributes.Hidden);

 

二、界面和源码例子:

1、界面布局

技术分享

技术分享

2、源码例子:

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.IO;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;

namespace FileHandleTest
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        #region Files类的文件操作方法(创建、复制、删除、移动、追加、打开、设置属性等)
      
        static string path = @"D:\Test\Debug1\测试.txt";    //源文件路径
        static string path1 = @"D:\Test\Debug2\测试1.txt";  //文件复制路径
        static string path2 = @"D:\Test\Debug3\测试2.txt";  //文件移动路径
        static string path3 = @"C:\测试3.txt";    //跨盘符存放路径(测试)

        /// <summary>
        /// 1、创建文件方法
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void btncreate_Click(object sender, EventArgs e)
        {
            //参数1:指定要判断的文件路径
            if (!File.Exists(path))
            {
                //参数1:要创建的文件路径,包含文件名称、后缀等
                FileStream fs = File.Create(path);
                fs.Close();
                MessageBox.Show("文件创建成功!");
            }
            else {
                MessageBox.Show("文件已经存在!");
            }
        }

        /// <summary>
        ///2、 打开文件的方法
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void btnopen_Click(object sender, EventArgs e)
        {
            if (File.Exists(path))
            {
                //参数1:要打开的文件路径,参数2:打开的文件方式
                FileStream fs = File.Open(path, FileMode.Append);
                //字节数组
                byte[] bytes = { (byte)‘h‘, (byte)‘e‘, (byte)‘l‘, (byte)‘l‘, (byte)‘o‘ };
                //通过字符流写入文件
                fs.Write(bytes, 0, bytes.Length);
                fs.Close();
                MessageBox.Show("打开并追加Hello成功!");
            }
            else
            {
                MessageBox.Show("文件不存在!");
            }
        }

        /// <summary>
        /// 3、追加文件内容方法
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void btnappend_Click(object sender, EventArgs e)
        {
            string appendtext = this.txtContent.Text;
            if (File.Exists(path))
            {
                //参数1:要追加的文件路径,参数2:追加的内容
                File.AppendAllText(path, appendtext);
                MessageBox.Show("文件追加内容成功!");
            }
            else
            {
                MessageBox.Show("文件不存在!");
            }
        }

       
        /// <summary>
        /// 4、复制文件方法(只能在同个盘符进行操作)
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void btncopy_Click(object sender, EventArgs e)
        {
            if (File.Exists(path))
            {
                //参数1:要复制的源文件路径,参数2:复制后的目标文件路径,参数3:是否覆盖相同文件名
                File.Copy(path, path1, true);
                MessageBox.Show("复制文件成功!");
            }
            else {
                MessageBox.Show("文件不存在!");
            }
        }

        /// <summary>
        /// 5、移动文件方法(只能在同个盘符进行操作)
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void btnmove_Click(object sender, EventArgs e)
        {
            if (File.Exists(path))
            {
                //参数1:要移动的源文件路径,参数2:移动后的目标文件路径
                File.Move(path, path2);
                MessageBox.Show("移动文件成功!");
            }
            else {
                MessageBox.Show("文件不存在!");
            }
        }

        /// <summary>
        /// 6、删除文件方法
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void btndelete_Click(object sender, EventArgs e)
        {
            if (File.Exists(path))
            {
                //参数1:要删除的文件路径
                File.Delete(path);
                MessageBox.Show("文件删除成功!");
            }
            else
            {
                MessageBox.Show("文件不存在!");
            }
        }

        /// <summary>
        ////7、设置文件属性方法
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void btnset_Click(object sender, EventArgs e)
        {
            if (File.Exists(path))
            {
                //参数1:要设置属性的文件路径,参数2:设置的属性类型(只读、隐藏等)
                File.SetAttributes(path, FileAttributes.Hidden);
                MessageBox.Show("设置文件属性为隐藏成功!");
            }
            else
            {
                MessageBox.Show("文件不存在!");
            }
        }

        #endregion
    }
       
}

 参考来源:http://www.cnblogs.com/mfc-itblog/p/5771780.html

C#File类常用的文件操作方法(创建、移动、删除、复制等)

标签:删除文件   u3d   ksh   函数   cap   this   avr   mfs   lvs   

原文地址:http://www.cnblogs.com/xielong/p/6187308.html

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