C# 处理文件的操作( File静态类 和 FileInfo普通类 ,他们用于复制,删除,创建,等等 不包含读写)

    CSDN广告是越来越多了,所有博客笔记不再更新,新网址 DotNet笔记

File 类(静态类)

提供用于创建Create()、复制Copy()、删除Delete()、移动Move()和打开文件Open()以及加密Encrypt()的静态方法,并协助创建 FileStream 对象。

将 File 类用于典型的操作,如复制、移动、重命名、创建、打开、删除和追加到文件。 也可将 File 类用于获取和设置文件属性或有关文件创建、访问及写入操作的DateTime 信息。

许多 File 方法在您创建或打开文件时返回其他 I/O 类型。 可以使用这些其他类型进一步处理文件。有关更多信息,请参见特定的 File 成员,如 OpenTextCreateText 或 Create

由于所有的 File 方法都是静态的,所以如果只想执行一个操作,那么使用 File 方法的效率比使用相应的 FileInfo 实例方法可能更高。 所有的 File 方法都要求当前所操作的文件的路径。

File 类的静态方法对所有方法都执行安全检查。 如果打算多次重用某个对象,可考虑改用 FileInfo 的相应实例方法,因为并不总是需要安全检查。

默认情况下,将向所有用户授予对新文件的完全读/写访问权限。

示例代码(控制台程序):

namespace FileOperoter
{
    class Program
    {
        // Encrypt a file.
        public static void AddEncryption(string FileName)
        {

            File.Encrypt(FileName);//加密文件

        }

        // Decrypt a file.
        public static void RemoveEncryption(string FileName)
        {
            File.Decrypt(FileName);//解密文件
        }

        static void Main(string[] args)
        {

            if (File.Exists(@"C:\Users\Administrator\Desktop\123.txt"))//如果文件存在
            {

                File.Delete(@"C:\Users\Administrator\Desktop\123.txt");//删除文件

                File.Copy(@"E:\学习\FileOperoter\FileOperoter\ems2.js", @"C:\Users\Administrator\Desktop\123.txt");//把ems2.js拷贝一份,放在桌面上,命名为123.txt
                if (File.Exists(@"C:\Users\Administrator\Desktop\123.txt"))
                {
                    Console.WriteLine("复制成功!");
                }
                else
                {
                    Console.WriteLine("复制失败!");
                }
            }
            else
            {
                Console.WriteLine("开始创建!");
                File.Create(@"C:\Users\Administrator\Desktop\123.txt");//创建文件
                Console.WriteLine("创建成功!");

            }
            //==============================加密/解密操作=======================================

            try
            {
                string FileName = @"E:\学习\FileOperoter\FileOperoter\ems2.js";
                Console.WriteLine("Encrypt " + FileName);
                AddEncryption(FileName);
                Console.WriteLine("Decrypt " + FileName);
                RemoveEncryption(FileName);
                Console.WriteLine("Done");
            }
            catch (Exception e)
            {
                Console.WriteLine(e);
            }

            Console.ReadLine();
        }




    }


}


FileInfo 类(几乎和File类功能相同,只是一个静态类,一个为普通类,之所以说几乎,其中一点就是普通类有几个专用属性,好比说,length)  

提供创建、复制、删除、移动和打开文件的实例方法,并且帮助创建 FileStream 对象。 此类不能被继承。

将 FileInfo 类用于典型的操作,如复制、移动、重命名、创建、打开、删除和追加到文件。

如 OpenOpenRead、 OpenText、 CreateText 或 Create

如果打算多次重用某个对象,可考虑使用 FileInfo 的实例方法,而不是 File 类的相应静态方法,因为并不总是需要安全检查。

如果只想执行一个操作,那么使用 File 方法的效率比使用相应的 FileInfo 实例方法可能更高...默认情况下,将向所有用户授予对新文件的完

全读/写访问权限。

            string path = Path.GetTempFileName();//创建磁盘上唯一命名的零字节的临时文件并返回该文件的完整路径。
            FileInfo fi1 = new FileInfo(path);
            string path2 = Path.GetTempFileName();
            FileInfo fi2 = new FileInfo(path2);
            Console.WriteLine(path);
            Console.WriteLine(path2);
            fi2.Delete();
            fi1.CopyTo(path2);
            Console.WriteLine("{0} was copied to {1}.", path, path2);
            fi2.Delete();
            Console.WriteLine("{0} was successfully deleted.", path2);
            Console.Read();

FileInfo有几个专用属性:
  • Length 文件的大小(字节)
  • IsReadOnly 
  • Directory 获取当前所在目录
  • DirectoryName 返回文件目录的路径



你可能感兴趣的:(C#)