※ ChatGPTを利用し、要約された質問です(原文:File.Existsでのファイルのある場合のDB作成)
File.Existsでのファイルのある場合のDB作成
このQ&Aのポイント
C#におけるFile.Existsを使用してファイルの存在を確認し、DB作成の条件分岐を行う方法
初心者向けの質問。C#でファイルが存在する場合にDBを作成する方法を知りたい。
C#のファイル処理において、File.Existsを使ってファイルの有無を確認し、それに応じた条件分岐を行う方法についての質問。
File.Existsでのファイルのある場合のDB作成
分類[C#]
はじめまして!
今回初めて質問させていただきます!
初めてなのでカテゴリーが間違ってないか心配です・・・。
さて、質問なのですがC#で
if (!File.Exists("DB.mds")){
dbcele();
}
と、書きこの場合「DB.mds」がない場合実行となると思うのですがDB.mdsがあるとき実行するとこのdbcele()が実行されてしまいます。
ちなみにこのdecare()は・・・
private void dbcele(){
try
{
ADOX.CatalogClass cat = new ADOX.CatalogClass();
cat.Create(strAC);
object oMissing = System.Reflection.Missing.Value;
// テーブルを作成する(CUSTOMER)
ADOX.TableClass td = new ADOX.TableClass();
td.ParentCatalog = cat;
td.Name = "DBT";
ADOX.ColumnClass hiduke = new ADOX.ColumnClass();
hiduke.ParentCatalog = cat;
hiduke.Name = "日付";
hiduke.Properties["Jet OLEDB:Allow Zero Length"].Value = false;
td.Columns.Append(hiduke, ADOX.DataTypeEnum.adDate, 0);
cat.Tables.Append(td);
}
catch(Exception ex)
{
MessageBox.Show(ex.Message);
}
}
で、このエラーメッセージが実行されてしまいます。
DB.mdsがある場合実行する必要はないのでこのエラーをなくしたいのですがどうすればいいでしょうか?
初心者のため、勘違いしてるかもしれませんがよろしくお願いします!
どうかよろしくお願いします。
お礼
ご回答いただきありがとうございます! フルパスで実行してみましたがやはり出ます。 ちなみにif (!File.Exists("DB.mds")){ の"DB.mds"はプロジェクトフォルダのbinの中のDebugの中に"DB.mds"があるのでこれでいいかな?とか思ってたんですが・・・・