このドキュメントはアーカイブされており、メンテナンスされていません。

FileOptions 列挙体

更新 : 2007 年 11 月

FileStream オブジェクトを作成するための追加オプションを表します。

この列挙体には、メンバ値のビットごとの組み合わせを可能にする ComVisibleAttribute 属性が含まれています。

名前空間 :  System.IO
アセンブリ :  mscorlib (mscorlib.dll 内)

[SerializableAttribute]
[ComVisibleAttribute(true)]
[FlagsAttribute]
public enum FileOptions
/** @attribute SerializableAttribute */ 
/** @attribute ComVisibleAttribute(true) */
/** @attribute FlagsAttribute */
public enum FileOptions
public enum FileOptions

メンバ名説明
None追加のパラメータがないことを示します。
WriteThroughシステムが中間キャッシュを使用して書き込みを行い、直接ディスクに移動することを示します。
Asynchronousファイルを非同期の読み取り用および書き込み用に使用できることを示します。
RandomAccessファイルがランダムにアクセスされることを示します。システムは、これをファイル キャッシングを最適化するためのヒントとして使用できます。
DeleteOnCloseファイルは使用しなくなった時点で自動的に削除されることを示します。
SequentialScanファイルは先頭から末尾まで順次アクセスされることを示します。システムは、これをファイル キャッシングを最適化するためのヒントとして使用できます。アプリケーションがランダム アクセスのファイル ポインタを移動させると、最適なキャッシングが行われない場合があります。ただし、操作は引き続き正常に実行されます。
Encryptedファイルは暗号化され、暗号化に使用したのと同じユーザー アカウントを使用する場合のみ復号化できることを示します。

FileOptions 列挙体を使用して、高度なファイル オプションを指定します。

FileStream オブジェクトを使用して、データをファイルに書き込んでからそのデータを読み取るコード例を次に示します。

using System;
using System.IO;
using System.Text;
using System.Security.AccessControl;

namespace FileSystemExample
{
    class FileStreamExample
    {
        public static void Main()
        {
            try
            {
                // Create a file and write data to it.

                // Create an array of bytes.
                byte[] messageByte = Encoding.ASCII.GetBytes("Here is some data.");

                // Specify an access control list (ACL)
                FileSecurity fs = new FileSecurity();

                fs.AddAccessRule(new FileSystemAccessRule(@"DOMAINNAME\AccountName",
                                                            FileSystemRights.ReadData,
                                                            AccessControlType.Allow));

                // Create a file using the FileStream class.
                FileStream fWrite = new FileStream("test.txt", FileMode.Create, FileSystemRights.Modify, FileShare.None, 8, FileOptions.None, fs);

                // Write the number of bytes to the file.
                fWrite.WriteByte((byte)messageByte.Length);

                // Write the bytes to the file.
                fWrite.Write(messageByte, 0, messageByte.Length);

                // Close the stream.
                fWrite.Close();


                // Open a file and read the number of bytes.

                FileStream fRead = new FileStream("test.txt", FileMode.Open);

                // The first byte is the string length.
                int length = (int)fRead.ReadByte();

                // Create a new byte array for the data.
                byte[] readBytes = new byte[length];

                // Read the data from the file.
                fRead.Read(readBytes, 0, readBytes.Length);

                // Close the stream.
                fRead.Close();

                // Display the data.
                Console.WriteLine(Encoding.ASCII.GetString(readBytes));

                Console.WriteLine("Done writing and reading data.");
            }
            catch (Exception e)
            {
                Console.WriteLine(e);
            }

            Console.ReadLine();
        }
    }
}



Windows Vista, Windows XP SP2, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP Starter Edition, Windows Server 2003, Windows Server 2000 SP4, Windows Millennium Edition, Windows 98

.NET Framework および .NET Compact Framework では、各プラットフォームのすべてのバージョンはサポートしていません。サポートされているバージョンについては、「.NET Framework システム要件」を参照してください。

.NET Framework

サポート対象 : 3.5、3.0、2.0
表示: