using System.Configuration;
string s = Properties.Settings.Default.test1;
Properties.Settings.Default.test1 = "hoge"; Properties.Settings.Default.Save();
// DbProviderFactoryのインスタンスを作成 DbProviderFactory dbProvider = DbProviderFactories.GetFactory("System.Data.OleDb"); // DbProviderFactoryのインスタンスからDbConnectionを取得 DbConnection dbCon = dbProvider.CreateConnection(); // DbConnectionに、ConnectionStringを設定し、Openする // DBファイルはtest.mdb(Microsoft Access MDB) dbCon.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data source=test.mdb"; dbCon.Open(); // この時点で、DBとの接続が完了 // DbProviderFactoryのインスタンスからDbCommandを取得 DbCommand dbCmd = dbProvider.CreateCommand(); // DbCommandに、接続情報(DbConnection)をセット dbCmd.Connection = dbCon; // DbCommandに、問い合わせ文をセット(サンプルなので適当なselect文) dbCmd.CommandText = "select * from foo"; // DbDataAdapterを取得 DbDataAdapter dbAdap = dbProvider.CreateDataAdapter(); // DbDataAdapterに、DbCommandを結びつける dbAdap.SelectCommand = dbCmd; // 問い合わせ結果を受け取るための、DataSetクラスのインスタンスを作成する DataSet ds = new DataSet(); // 問い合わせ結果を取得する dbAdap.Fill(ds); // DataSetは複数のテーブルに対するデータが保存できるので、 // 1つ以上のテーブルデータが保存されているか確認する if (ds.Tables.Count > 0) { // 最初のテーブル情報を利用する DataTable dt = ds.Tables[0]; // 問い合わせ結果が1行以上存在するか確認する DataRowCollection rows = dt.Rows; if (rows.Count > 0) { // 問い合わせ結果の最初の行の、最初の列の値を出力する System.Console.WriteLine(rows[0][0]); // 問い合わせ結果の最初の行の、列名が「FIELD1」の列の値を出力する System.Console.WriteLine(rows[0]["FIELD1"]); } } // 接続を切断する dbCon.Close();
// DbCommandに、問い合わせ文をセット(サンプルなので適当なselect文) dbCmd.CommandText = "select * from foo"; // DbDataAdapterを取得 DbDataAdapter dbAdap = dbProvider.CreateDataAdapter(); // DbDataAdapterに、DbCommandを結びつける dbAdap.SelectCommand = dbCmd; // 問い合わせ結果を受け取るための、DataSetクラスのインスタンスを作成する DataSet ds = new DataSet(); // 問い合わせ結果を取得する dbAdap.Fill(ds);
// DbCommandに、問い合わせ文をセット(サンプルなので適当なselect文) dbCmd.CommandText = "select * from foo"; // 問い合わせ結果を取得する DbDataReader dbReader = cmd.ExecuteReader(); // 一行ずつ処理を行う do { while (dbReader.Read()) { // 列情報を取得する // 列名では取得できない? // 実際の型と異なる形式で取得できない? int f1 = dbReader.GetInt32(0); string f2 = dbReader.GetString(1); string f3 = dbReader.GetString(2); ・・・ } } while (dbReader.NextResult()); // DbDataReaderを使い終わったらCloseする dbReader.Close();
// DbCommandに、実行したいSQL文をセット(サンプルなので適当なupdate文) dbCmd.CommandText = "update foo set update='2007-01-02' where id=1"; // SQL文の実行 cmd.ExecuteNonQuery();
// DbCommandに、実行したいSQL文をセット(サンプルなので適当なupdate文) // パラメータマーカーは、DBに依存するそうだが、OLE DBでも、@idの様な記述で問題なく動く dbCmd.CommandText = "update foo set update=@update where id=@id"; // パラメータの情報を設定 // DBに依存しないコードは記述できない??? // OLD DBの場合、パラメータを名前で判断していないので、 // パラメータの出現順とAddメソッドが同期していなければいけない // また、実際のパラメータ名と異なる名前を使用してもエラーにならず、正しく処理される dbCmd.Parameters.Add(new OleDbParameter("@update", OleDbType.Date)); dbCmd.Parameters.Add(new OleDbParameter("@id", OleDbType.Numeric)); // パラメータに値を設定 // dbCmd.Parameters[0].Value = '2007-01-02' としてもよいが、パラメータ名を使用して値を設定できる dbCmd.Parameters["@update"].Value = '2007-01-02'; dbCmd.Parameters["@id"].Value = 1; // SQL文の実行 cmd.ExecuteNonQuery();
// DbCommandに、実行したいSQL文をセット(サンプルなので適当なupdate文) dbCmd.CommandText = "update foo set update=@update where id=@id"; // パラメータの情報を設定 dbCmd.Parameters.Add(new OleDbParameter("@update", OleDbType.Date)); dbCmd.Parameters.Add(new OleDbParameter("@id", OleDbType.Numeric)); // パラメータに値を設定 dbCmd.Parameters["@update"].Value = '2007-01-02'; dbCmd.Parameters["@id"].Value = 1; // SQL文の実行 cmd.ExecuteNonQuery(); // 次の処理のためのパラメータに値を設定 // 直前の処理と同じSQL文であれば、パラメータ情報を設定しなおす必要は無い dbCmd.Parameters["@update"].Value = DateTime.Now; dbCmd.Parameters["@id"].Value = 2; // SQL文の実行 cmd.ExecuteNonQuery();
// DataGridViewに表示したいテーブル名 string sMemberName = "foo"; // 問い合わせ結果を受け取るための、DataSetクラスのインスタンスを作成する DataSet ds = new DataSet(); // 問い合わせ結果を取得する dbAdap.Fill(ds, sMemberName); // 対象となるテーブルオブジェクトの存在確認 if (ds.Tables.IndexOf(sMemberName) >= 0) { // DataGridViewのDataSourceとDataSetを結びつける dataGridView1.DataSource = ds; // DataMemberプロパティが設定されていないと表示されない dataGridView1.DataMember = sMemberName; }
// DataGridViewに表示したいテーブル名 string sMemberName = "foo"; // 問い合わせ結果を受け取るための、DataSetクラスのインスタンスを作成する DataSet ds = new DataSet(); // 問い合わせ結果を取得する dbAdap.Fill(ds, sMemberName); // 対象となるテーブルオブジェクトの存在確認 if (ds.Tables.IndexOf(sMemberName) >= 0) { // DataGridViewのDataSourceとDataTableを結びつける dataGridView1.DataSource = ds.Tables[sMemberName]; }
// 問い合わせ結果を受け取るための、DataTableクラスのインスタンスを作成する DataTable dt = new DataTable(); // 問い合わせ結果を取得する dbAdap.Fill(dt); // DataGridViewのDataSourceとDataTableを結びつける dataGridView1.DataSource = dt;
ds.Tables["foo"].rows[0]["FIELD1"];
ds.foo[0].FIELD1;
if ( !ds.foo[0].IsFIELD1Null() ) f1 = ds.foo[0].FIELD1;
XmlDocument doc1 = new XmlDocument(); XmlDocument doc2 = new XmlDocument(); doc1.Load("test1.xml"); doc2.Load("test2.xml"); XmlNodeList lst = doc1.SelectNodes("/foo/*"); XmlNode parent = doc2.SelectSingleNode("/foo"); foreach (XmlNode node in lst) { parent.AppendChild(doc2.ImportNode(node, true)); }
string[] sFiles = Directory.GetFiles(@"c:\temp");
string[] sFiles = Directory.GetFiles(@"c:\temp", "*.txt");
string[] sFiles = Directory.GetFiles(@"c:\temp", "*.txt", SearchOption.AllDirectories);
if (File.Exists(@"c:\temp\foo.txt")) { // ファイルが存在する }
private void Form1_DragEnter(object sender, DragEventArgs e) { // ファイルをDrag & Dropの処理対象にする場合 if (e.Data.GetDataPresent(DataFormats.FileDrop)) e.Effect = DragDropEffects.All; } private void Form1_DragDrop(object sender, DragEventArgs e) { if (e.Data.GetDataPresent(DataFormats.FileDrop)) { string[] sFiles = (string[])e.Data.GetData(DataFormats.FileDrop); Array.Sort(sFiles); // ファイル名を並べ替えたいときには必要 foreach (string sFileName in sFiles) Console.WriteLine(sFileName); } }