2016-10-27 5 views
0

ローカルデータベースから.txtにダウンロードするテーブルを取得しようとしています。私はしていると私は正直なところ失っている。C#WPFのMySqlから.txtへ

他のユーザーを簡単にするためには、txtにする必要があります。私はいくつかの方法で試してみましたが、私はそれをデータグリッドに書いているかのように呼び出そうとしましたが、これはうまくいきませんでした。

私はそれはそれだけでtxtファイルに書き込むいない、情報を引き出し、読んでいる

while (dbReader.Read()) 
       { 
        MessageBox.Show(dbReader.GetValue(0).ToString()); 
       } 

@リーダーからの結果を取得しています。ここにコードがあります。

private void btnDLSql_Click(object sender, RoutedEventArgs e) 
     { 
      string dbConnection = "datasource=127.0.0.1;port=3306;username=root;password=12345"; 
      MySqlConnection conDataBase = new MySqlConnection(dbConnection); 
      MySqlCommand SelectCommand = new MySqlCommand("select GUID,BanTime,Reason from bans.bans order by BanType asc", conDataBase); 

      conDataBase.Open(); 

      MySqlCommand command = conDataBase.CreateCommand(); 
      MySqlDataReader dbReader = SelectCommand.ExecuteReader(); 

      if (dbReader != null) 
      { 
       System.IO.StreamWriter file = new System.IO.StreamWriter(@"C:\Users\mccla\Desktop\A3Bans.txt", true); 

       while (dbReader.Read()) 
       { 
        MessageBox.Show(dbReader.GetValue(0).ToString()); 
       } 
      } 

      conDataBase.Close(); 

     } 

ご協力いただければ幸いです。申し訳ありませんが、私は通常、自分で試してみることを試みます。しかし、ちょうどこれのための情報を見つけることができません。

+0

あなたは' file.Write(dbReader.GetValue(0).ToString())を入れてみました:

おそらくにあなたのコードを簡素化することができますか? (また、ファイルを閉じていますか?) –

+1

ファイルを書きたい場合は、ファイルに実際に物を入れるコードを書くようにしてください。 – SLaks

+0

'dbReader'は' null 'になることはありません。 – SLaks

答えて

1

あなたは現在あなたのファイルに書き込みをしていません。また、コメントにSLaksが言及したように、usingステートメントを使用する必要があります。 `の代わりに、メッセージボックスを表示;

 var dbConnection = "datasource=127.0.0.1;port=3306;username=root;password=12345"; 
     using (var conDataBase = new MySqlConnection(dbConnection)) 
     using (var selectCommand = new MySqlCommand("select GUID,BanTime,Reason from bans.bans order by BanType asc", conDataBase)) { 
      var dbReader = selectCommand.ExecuteReader(); 
      using (var file = new System.IO.StreamWriter(@"C:\Users\mccla\Desktop\A3Bans.txt", true)) { 
       while (dbReader.Read()) { 
        file.Write(dbReader.GetValue(0).ToString()); 
       } 
      } 
     } 
+0

ありがとう、私は単純化する方法を見て、私は上記のコメントで言ったように、私は本当にいくつかの小さなプロジェクトの外に入っている第1言語です。 – Mokey

関連する問題