
新しいファイルを作成する際、上記ダイアログを表示してフォルダ・ファイル名を指定させるにはSaveFileDialogを用います。(既存ファイルを選択させる場合はオープンファイルダイアログご参照)
SaveFileDialog
ダイアログを表示するには ~.ShowDialog() を用います。
「保存」を選択した判定はDialogResult.OK を用います。
ファイル名の取得は~.FileNameを用います。
/* インスタンスの初期化 */
SaveFileDialog SFD = new SaveFileDialog();
/* ダイアログを表示し「開く」場合 */
if (SFD.ShowDialog() == DialogResult.OK)
{
/* ファイル名を表示する */
MessageBox.Show(SFD.FileName);
}
SaveFileDialog SFD = new SaveFileDialog();
/* ダイアログを表示し「開く」場合 */
if (SFD.ShowDialog() == DialogResult.OK)
{
/* ファイル名を表示する */
MessageBox.Show(SFD.FileName);
}
初期フォルダを設定する
ダイアログを表示した際、特定のフォルダを開くようにするには~.InitialDirectoryを用います。
/* インスタンスの初期化 */
SaveFileDialog SFD = new SaveFileDialog();
/* 初期フォルダ */
SFD.InitialDirectory = @"c:\test\";
/* ダイアログを表示し「開く」場合 */
if (SFD.ShowDialog() == DialogResult.OK)
{
/* ファイル名を表示する */
MessageBox.Show(SFD.FileName);
}
SaveFileDialog SFD = new SaveFileDialog();
/* 初期フォルダ */
SFD.InitialDirectory = @"c:\test\";
/* ダイアログを表示し「開く」場合 */
if (SFD.ShowDialog() == DialogResult.OK)
{
/* ファイル名を表示する */
MessageBox.Show(SFD.FileName);
}
尚、特定のフォルダはEnvironment.GetFolderPath(Environment.SpecialFolder.特定のフォルダ)で設定する事ができます。
| 特定のフォルダ | 場所 |
|---|---|
| ApplicationData | C:\Users\・・・\AppData\Roaming |
| CommonApplicationData | C:\ProgramData |
| CommonProgramFiles | C:\Program Files\Common Files |
| Cookies | C:\Users\・・・\AppData\Roaming\Microsoft\Windows\Cookies |
| Desktop | デスクトップ |
| DesktopDirectory | デスクトップ |
| Favorites | お気に入り |
| History | C:\Users\・・・\AppData\Local\Microsoft\Windows\History |
| InternetCache | C:\Users\・・・\AppData\Local\Microsoft\Windows\Temporary Internet Files |
| LocalApplicationData | C:\Users\・・・\AppData\Local |
| MyComputer | ドキュメント? |
| MyDocuments | ドキュメント |
| MyMusic | ミュージック |
| MyPictures | ピクチャ |
| Personal | ドキュメント? |
| ProgramFiles | C:\Program Files |
| Recent | C:\Users\・・・\AppData\Roaming\Microsoft\Windows\Recent (最近使った項目) |
| SendTo | C:\Users\・・・\AppData\Roaming\Microsoft\Windows\SendTo |
| StartMenu | C:\Users\・・・\AppData\Roaming\Microsoft\Windows\Start Menu (スタートメニュー) |
| Startup | C:\Users\・・・\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup |
| System | C:\Windows\System32 |
| Templates | C:\Users\・・・\AppData\Roaming\Microsoft\Windows\Templates |
/* インスタンスの初期化 */
SaveFileDialog SFD = new SaveFileDialog();
/* 初期フォルダ */
SFD.InitialDirectory = Environment.GetFolderPath(Environment.SpecialFolder.Favorites);
/* ダイアログを表示し「開く」場合 */
if (SFD.ShowDialog() == DialogResult.OK)
{
/* ファイル名を表示する */
MessageBox.Show(SFD.FileName);
}
SaveFileDialog SFD = new SaveFileDialog();
/* 初期フォルダ */
SFD.InitialDirectory = Environment.GetFolderPath(Environment.SpecialFolder.Favorites);
/* ダイアログを表示し「開く」場合 */
if (SFD.ShowDialog() == DialogResult.OK)
{
/* ファイル名を表示する */
MessageBox.Show(SFD.FileName);
}

