【C#】オープンファイルダイアログ-ファイル存在チェック

ファイルを開く際、ダイアログを表示してファイルを選ばせる方法は「【C#】オープンファイルダイアログ-初期フォルダの設定」を参照下さい。

ファイルダイアログ画面でファイルを選択すれば、存在しないファイルが選ばれる事はありませんが、手入力でファイル名が入力できるので、ファイルの読み込み処理を前提とした場合、ファイルチェックが重要です。

ファイルの存在チェックは System.IO.File.Exists(fileName) で出来ますが、OpenFileDialog 内で簡単に存在チェックの機能を設定する事ができます。(デフォルトは「チェックする(True)」)




 ファイル存在チェック


ファイルの存在チェックをする場合には~.CheckFileExists = trueを用い、ファイルの存在チェックをしない場合には~.CheckFileExists = falseを用い、ダイアログを表示(ShowDialog)する前に記述します。

 ▽ ファイルの存在チェックをする場合
OFD.CheckFileExists = true;

 ▽ ファイルの存在チェックをしない場合
OFD.CheckFileExists = false;

一連の処理を通して記述すると下記となります。

/* インスタンスの初期化 */
OpenFileDialog OFD = new OpenFileDialog();

/* タイトルの設定 */
OFD.Title = "Excelファイルを選択してください";

/* 初期フォルダ:マイドキュメント */
OFD.InitialDirectory = Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments);

/* フィルター:Text、Excel */
OFD.Filter = "Text Files (*.txt)|*.txt|Excel File(*.xls;*.xlsx)|*.xls;*.xlsx";

/* フィルター初期値:Excel */
OFD.FilterIndex = 2;

/* ファイルの存在チェックをする */
OFD.CheckFileExists = true;

/* ダイアログを表示し「開く」場合 */
if (OFD.ShowDialog() == DialogResult.OK)
{
  /* ファイル名を表示する */
  MessageBox.Show(OFD.FileName);
}

尚、フォルダのチェックするCheckPathExistsプロパティがありますが、存在しないフォルダ+ファイル名を入れてもエラーが発生するので、こちらはイマイチ用途が不明です。

カテゴリー: C#, システム開発 | コメントする

【ポケモンGO】ルビー・サファイアのポケモンが追加(2017/12/9)



ポケGOのバージョンアップで、ルビー・サファイアのポケモンが50種類以上追加となりました。(公式サイト)

このバージョンアップにより、①ポケモンボックスの上限が1,500に引き上げられ、②50枠プレゼントされました。

更に③天候機能が追加となり、天気の変化によりPOPしやすいポケモンや技が強化されます。

そしてレイドボスバトルや通常バトルでは、いつも自分の望まない構成で戦闘待ちとなってましたが、ベータ版として④バトルパーティを5つ保存できるようになりました。正式版ではないためサーバーでの保管はされていないので、現じてではスマホを機種した場合、引き継がれない点が注意です。

もう12月も中旬です。起動画面がハロウィン仕様からクリスマス仕様に変わりましたね。



カテゴリー: ポケモンGO | コメントする

【C#】オープンファイルダイアログ-タイトル設定

ファイルを開く際、ダイアログを表示してファイルを選ばせる方法は「【C#】オープンファイルダイアログ-初期フォルダの設定」を参照下さい。

ここでは、下記ダイアログのようにダイアログのタイトルする方法を記載します。(上記リンク先の「開く」はデフォルト)




 タイトル設定


タイトルの設定をするには~.Titleを用い、ダイアログを表示(ShowDialog)する前に記述します。

OFD.Title = "Excelファイルを選択してください";

一連の処理を通して記述すると下記となります。

/* インスタンスの初期化 */
OpenFileDialog OFD = new OpenFileDialog();

/* タイトルの設定 */
OFD.Title = "Excelファイルを選択してください";

/* 初期フォルダ:マイドキュメント */
OFD.InitialDirectory = Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments);

/* フィルター:Text、Excel */
OFD.Filter = "Text Files (*.txt)|*.txt|Excel File(*.xls;*.xlsx)|*.xls;*.xlsx";

/* フィルター初期値:Excel */
OFD.FilterIndex = 2;

/* ダイアログを表示し「開く」場合 */
if (OFD.ShowDialog() == DialogResult.OK)
{
  /* ファイル名を表示する */
  MessageBox.Show(OFD.FileName);
}

カテゴリー: C#, システム開発 | コメントする

【C#】オープンファイルダイアログ-ファイル指定(フィルター)

ファイルを開く際、ダイアログを表示してファイルを選ばせる方法は「【C#】オープンファイルダイアログ-初期フォルダの設定」を参照下さい。

ここでは、下記ダイアログのようにフィルターを使ってファイル(拡張子)の表示を制限する方法を記載します。




 ファイル指定(フィルター)


選択できるファイルを「Excelに限定したい」「テキストファイルに限定したい」という場合、~.Filterを用います。複数ある場合、初期表示を指定するには~.FilterIndex = 1 ~を用います。

 ▽指定するファイルが1種類の場合、"表示用の文言 | 表示する内容" と記述します
OFD.Filter = "Text Files (*.txt)|*.txt";

 ▽指定するファイルが1種類で複数拡張子がある場合、セミコロン(;)で区切ります
OFD.Filter = "Excel File(*.xls;*.xlsx)|*.xls;*.xlsx";

 ▽指定するファイルが2種類以上の場合、パイプ(|)を使って記述します。
  初期値をExcel Fileにしたい場合はFilterIndex(初期値は1)を用います。
OFD.Filter = "Text Files (*.txt)|*.txt|Excel File(*.xls;*.xlsx)|*.xls;*.xlsx";
OFD.FilterIndex = 2;

一連の処理を通して記述すると下記となります。

/* インスタンスの初期化 */
OpenFileDialog OFD = new OpenFileDialog();

/* 初期フォルダ:マイドキュメント */
OFD.InitialDirectory = Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments);

/* フィルター:Text、Excel */
OFD.Filter = "Text Files (*.txt)|*.txt|Excel File(*.xls;*.xlsx)|*.xls;*.xlsx";

/* フィルター初期値:Excel */
OFD.FilterIndex = 2;

/* ダイアログを表示し「開く」場合 */
if (OFD.ShowDialog() == DialogResult.OK)
{
  /* ファイル名を表示する */
  MessageBox.Show(OFD.FileName);
}

カテゴリー: C#, システム開発 | コメントする

【C#】オープンファイルダイアログ-初期フォルダの設定



ファイルを開く際、上記ダイアログを表示して選ばせるにはOpenFileDialogを用います。


 OpenFileDialog


ダイアログを表示するには ~.ShowDialog() を用います。
「開く」を選択した判定はDialogResult.OK を用います。
ファイル名の取得は~.FileNameを用います。

/* インスタンスの初期化 */
OpenFileDialog OFD = new OpenFileDialog();

/* ダイアログを表示し「開く」場合 */
if (OFD.ShowDialog() == DialogResult.OK)
{
  /* ファイル名を表示する */
  MessageBox.Show(OFD.FileName);
}


 初期フォルダを設定する


ダイアログを表示した際、特定のフォルダを開くようにするには~.InitialDirectoryを用います。

/* インスタンスの初期化 */
OpenFileDialog OFD = new OpenFileDialog();

/* 初期フォルダ */
OFD.InitialDirectory = @"c:\test\";

/* ダイアログを表示し「開く」場合 */
if (OFD.ShowDialog() == DialogResult.OK)
{
  /* ファイル名を表示する */
  MessageBox.Show(OFD.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
例えば、お気に入りを初期設定としたい場合は下記のように記述します。
/* インスタンスの初期化 */
OpenFileDialog OFD = new OpenFileDialog();

/* 初期フォルダ */
OFD.InitialDirectory = Environment.GetFolderPath(Environment.SpecialFolder.Favorites);

/* ダイアログを表示し「開く」場合 */
if (OFD.ShowDialog() == DialogResult.OK)
{
  /* ファイル名を表示する */
  MessageBox.Show(OFD.FileName);
}

カテゴリー: C#, システム開発 | コメントする