C#ファイルを処理する操作(File静的クラスとFileInfo一般クラス、コピー、削除、作成、読み書きを含まない)

3983 ワード

CSDN広告はますます多くなって、すべてのブログのノートはもう更新しないで、新しいウェブサイトDotNetノート
Fileクラス(静的クラス)
Create()の作成、Copy()のコピー、Delete()の削除、Move()の移動、ファイルOpen()のオープン、Encrypt()の暗号化のための静的な方法を提供し、FileStreamオブジェクトの作成を支援します.
ファイルへのコピー、移動、名前変更、作成、開く、削除、追加などの一般的な操作にFileクラスを使用します.ファイルのプロパティまたはファイルの作成、アクセス、書き込みに関するDateTime情報を取得および設定するためにFileクラスを使用することもできます.
多くのFileメソッドは、ファイルを作成または開くときに他のI/Oタイプを返します.これらの他のタイプを使用して、ファイルをさらに処理できます.詳細については、OpenText、CreateText、Createなどの特定のFileメンバーを参照してください.
すべてのFileメソッドは静的であるため、1つの操作のみを実行する場合、対応するFileInfoインスタンスメソッドを使用するよりもFileメソッドを使用する方が効率的である可能性があります.すべての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クラスと同じ機能で、ただの静的クラスで、1つは普通クラスで、ほとんどの理由で、その1つは普通クラスにいくつかの専用属性があり、例えばlength)
 
ファイルの作成、コピー、削除、移動、および開く方法を提供し、FileStreamオブジェクトの作成を支援します.これらは継承できません.
FileInfoクラスは、コピー、移動、名前変更、作成、開く、削除、ファイルへの追加など、一般的な操作に使用されます.
Open、OpenRead、OpenText、CreateText、Createなどです.
オブジェクトを複数回再利用する場合は、常にセキュリティチェックが必要ではないため、Fileクラスの対応する静的メソッドではなく、FileInfoのインスタンスメソッドを使用することを考慮します.
1つの操作のみを実行する場合は、対応するFileInfoインスタンスメソッドを使用するよりも、Fileメソッドを使用する方が効率的である可能性があります.デフォルトでは、すべてのユーザーに新しいファイルの完了が付与されます.
フル読み取り/書き込みアクセス権.
            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ファイルディレクトリへのパス