OpenFileDialog.OpenFile メソッド

ユーザーが選択したファイルを読み取り専用で開きます。このファイルは、 FileName プロパティで指定されます。

Public Function OpenFile() As Stream
[C#]
public Stream OpenFile();
[C++]
public: Stream* OpenFile();
[JScript]
public function OpenFile() : Stream;

戻り値

ユーザーが選択した読み取り専用ファイルを指定する Stream

例外

例外の種類 条件
ArgumentNullException ファイル名が null 参照 (Visual Basic では Nothing) です。

解説

ダイアログ ボックスからファイルをすばやく開くには、 OpenFile メソッドを使用します。この場合、ファイルはセキュリティを維持するために読み取り専用モードで開かれます。ファイルを読み取り/書き込みモードで開くには、 FileStream などの別のメソッドを呼び出す必要があります。

使用例

[Visual Basic, C#, C++] OpenFile メソッドを使用する方法の例を次に示します。この例では、 ShowReadOnly プロパティが true に設定された OpenFileDialog を表示します。オプションをクリックしてファイルを読み取り専用モードで開くと、 OpenFile メソッドを使用してファイルが開かれます。それ以外の場合は、 FileStream クラスを使用して読み取り/書き込みモードでファイルが開かれます。

 

    Private Function OpenFile() As FileStream

        ' Displays an OpenFileDialog and shows the read/only files.

        Dim DlgOpenFile As New OpenFileDialog()
        DlgOpenFile.ShowReadOnly = True
        Dim Fs As FileStream

        If DlgOpenFile.ShowDialog() = DialogResult.OK Then

            ' If ReadOnlyChecked is true, uses the OpenFile method to
            ' open the file with read/only access.

            If DlgOpenFile.ReadOnlyChecked = True Then

                Return DlgOpenFile.OpenFile()

                ' Otherwise, opens the file with read/write access.

            Else

                Dim Path As String = DlgOpenFile.FileName
                Return New FileStream(Path, System.IO.FileMode.Open, _
                        System.IO.FileAccess.ReadWrite)


            End If

        End If


    End Function


[C#] 
private FileStream OpenFile()
{
    // Displays an OpenFileDialog and shows the read/only files.

    OpenFileDialog dlgOpenFile = new OpenFileDialog();
    dlgOpenFile.ShowReadOnly = true;


    if(dlgOpenFile.ShowDialog() == DialogResult.OK)
    {

        // If ReadOnlyChecked is true, uses the OpenFile method to
        // open the file with read/only access.

        if(dlgOpenFile.ReadOnlyChecked == true)
        {
            return (FileStream)dlgOpenFile.OpenFile();

        }

        // Otherwise, opens the file with read/write access.

        else
        {
            string path = dlgOpenFile.FileName;
            return new FileStream(path, System.IO.FileMode.Open, 
                    System.IO.FileAccess.ReadWrite);
        }


    }

    return null;


}


[C++] 
private:
    FileStream* OpenFile() {
        // Displays an OpenFileDialog and shows the read/only files.

        OpenFileDialog* dlgOpenFile = new OpenFileDialog();
        dlgOpenFile->ShowReadOnly = true;

        if (dlgOpenFile->ShowDialog() == DialogResult::OK) {
            // If ReadOnlyChecked is true, uses the OpenFile method to
            // open the file with read/only access.
            if (dlgOpenFile->ReadOnlyChecked == true) {
                return dynamic_cast<FileStream*>(dlgOpenFile->OpenFile());
            }

            // Otherwise, opens the file with read/write access.
            else {
                String* path = dlgOpenFile->FileName;
                return new FileStream(path, System::IO::FileMode::Open,
                    System::IO::FileAccess::ReadWrite);
            }
        }
        return 0;
    }

[JScript] JScript のサンプルはありません。Visual Basic、C#、および C++ のサンプルを表示するには、このページの左上隅にある言語のフィルタ ボタン 言語のフィルタ をクリックします。

必要条件

プラットフォーム: Windows 98, Windows NT 4.0, Windows Millennium Edition, Windows 2000, Windows XP Home Edition, Windows XP Professional, Windows Server 2003 ファミリ

.NET Framework セキュリティ:

参照

OpenFileDialog クラス | OpenFileDialog メンバ | System.Windows.Forms 名前空間 | Stream