次の方法で共有


FileStream コンストラクタ (IntPtr, FileAccess, Boolean)

メモ : このコンストラクタは、互換性のために残されています。

FileStream クラスの新しいインスタンスを、指定した読み取り/書き込みアクセス許可と FileStream インスタンスの所有権を使用して、指定したファイル ハンドル用に初期化します。

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

構文

'宣言
<ObsoleteAttribute("This constructor has been deprecated.  Please use new FileStream(SafeFileHandle handle, FileAccess access) instead, and optionally make a new SafeFileHandle with ownsHandle=false if needed.  https://go.microsoft.com/fwlink/?linkid=14202")> _
Public Sub New ( _
    handle As IntPtr, _
    access As FileAccess, _
    ownsHandle As Boolean _
)
'使用
Dim handle As IntPtr
Dim access As FileAccess
Dim ownsHandle As Boolean

Dim instance As New FileStream(handle, access, ownsHandle)
[ObsoleteAttribute("This constructor has been deprecated.  Please use new FileStream(SafeFileHandle handle, FileAccess access) instead, and optionally make a new SafeFileHandle with ownsHandle=false if needed.  https://go.microsoft.com/fwlink/?linkid=14202")] 
public FileStream (
    IntPtr handle,
    FileAccess access,
    bool ownsHandle
)
[ObsoleteAttribute(L"This constructor has been deprecated.  Please use new FileStream(SafeFileHandle handle, FileAccess access) instead, and optionally make a new SafeFileHandle with ownsHandle=false if needed.  https://go.microsoft.com/fwlink/?linkid=14202")] 
public:
FileStream (
    IntPtr handle, 
    FileAccess access, 
    bool ownsHandle
)
/** @attribute ObsoleteAttribute("This constructor has been deprecated.  Please use new FileStream(SafeFileHandle handle, FileAccess access) instead, and optionally make a new SafeFileHandle with ownsHandle=false if needed.  https://go.microsoft.com/fwlink/?linkid=14202") */ 
public FileStream (
    IntPtr handle, 
    FileAccess access, 
    boolean ownsHandle
)
ObsoleteAttribute("This constructor has been deprecated.  Please use new FileStream(SafeFileHandle handle, FileAccess access) instead, and optionally make a new SafeFileHandle with ownsHandle=false if needed.  https://go.microsoft.com/fwlink/?linkid=14202") 
public function FileStream (
    handle : IntPtr, 
    access : FileAccess, 
    ownsHandle : boolean
)

パラメータ

  • handle
    現在の FileStream オブジェクトによってカプセル化されるファイルのファイル ハンドル。
  • access
    FileStream オブジェクトの CanRead プロパティと CanWrite プロパティを取得する FileAccess 定数。
  • ownsHandle
    FileStream のインスタンスがファイル ハンドルを所有する場合は true。それ以外の場合は false

例外

例外の種類 条件

ArgumentException

access が FileAccess のフィールドではありません。

SecurityException

呼び出し元に、必要なアクセス許可がありません。

IOException

ディスク エラーなどの I/O エラーが発生しました。

または

ストリームは閉じられています。

UnauthorizedAccessException

access が Write または ReadWrite であるのに、ファイル ハンドルが読み取り専用に設定されているなど、指定したファイル ハンドルに対する access 要求がオペレーティング システムで許可されません。

解説

FileStream オブジェクトには、ファイルへの指定したアクセス権が付与されます。ハンドルの所有権は、指定されているとおりになります。このプロセスがハンドルを所有している場合は、Close メソッドの呼び出しによって、ハンドルも閉じられ、ファイルのハンドル カウントがデクリメントされます。FileStream オブジェクトには、8,192 バイトの既定のバッファ サイズが付与されます。

FileStream は、ハンドルを排他的に制御していると見なされます。FileStream がハンドルも保持しているときに、読み取り、書き込み、またはシークを実行すると、データが破損することがあります。データを保護するために、ハンドルを使用する前に Flush を呼び出し、ハンドルの使用後は Close 以外のメソッドを呼び出さないようにします。

FileShare パラメータを指定しないタイプの FileStream コンストラクタに対しては、FileShare.Read が既定値です。

ヒント

特定のカルチャ設定で文字セットをコンパイルし、同じ文字を異なるカルチャ設定で取得すると、文字が正しく解釈されない場合があり、例外がスローされることもあります。

その他の一般的な I/O タスクまたは関連する I/O タスクの例を次の表に示します。

実行するタスク

参考例があるトピック

テキスト ファイルを作成する。

方法 : ファイルにテキストを書き込む

テキスト ファイルに書き込む。

方法 : ファイルにテキストを書き込む

テキスト ファイルから読み取る。

方法 : ファイルからテキストを読み取る

テキストをファイルに追加する。

方法 : ログ ファイルを開いて情報を追加する

File.AppendText

FileInfo.AppendText

ファイルの名前を変更、またはファイルを移動する。

File.Move

FileInfo.MoveTo

ファイルを削除する。

File.Delete

FileInfo.Delete

ファイルをコピーする。

File.Copy

FileInfo.CopyTo

ファイルのサイズを取得する。

FileInfo.Length

ファイルの属性を取得する。

File.GetAttributes

ファイルの属性を設定する。

File.SetAttributes

ファイルが存在するかどうかを判別する。

File.Exists

バイナリ ファイルから読み取る。

方法 : 新しく作成されたデータ ファイルに対して読み書きする

バイナリ ファイルに書き込む。

方法 : 新しく作成されたデータ ファイルに対して読み書きする

ファイルの拡張子を取得する。

Path.GetExtension

ファイルの絶対パスを取得する。

Path.GetFullPath

パスからファイル名と拡張子を取得する。

Path.GetFileName

ファイルの拡張子を変更する。

Path.ChangeExtension

.NET Framework のセキュリティ

プラットフォーム

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

開発プラットフォームの中には、.NET Framework によってサポートされていないバージョンがあります。サポートされているバージョンについては、「システム要件」を参照してください。

バージョン情報

.NET Framework

サポート対象 : 1.0、1.1
2.0 では、互換性のために残されています (コンパイル時に警告)

参照

関連項目

FileStream クラス
FileStream メンバ
System.IO 名前空間

その他の技術情報

ファイルおよびストリーム入出力
方法 : ファイルからテキストを読み取る
方法 : ファイルにテキストを書き込む