我正在尝试将来自 mysql uinlg c# 的数据写入 .txt 文件,但出现错误“阅读器关闭时尝试读取无效。”。
代码在这里:
StreamWriter sr_Produto = new StreamWriter(@"C:\Enzo\PAP\PAP\Ficheiros\produto.txt", true); bdcon.Open(); MySqlCommand cmd = new MySqlCommand("SELECT nome from produtos",bdcon); MySqlDataReader dr = cmd.ExecuteReader(); if (dr.Read()) { sr_Produto.Write(dr["nome"].ToString()); } bdcon.Close(); bdcon.Open(); StreamWriter sr_Quantidade = new StreamWriter(@"C:\Enzo\PAP\PAP\Ficheiros\quantidade.txt", true); MySqlCommand cmd1 = new MySqlCommand("SELECT quantidade from produtos_pedidos",bdcon); MySqlDataReader dr1 = cmd1.ExecuteReader(); if (dr.Read()) { sr_Produto.Write(dr["quantidade"].ToString()); } bdcon.Close(); bdcon.Open(); StreamWriter sr_Subtotal = new StreamWriter(@"C:\Enzo\PAP\PAP\Ficheiros\subtotal.txt", true); MySqlCommand cmd2 = new MySqlCommand("SELECT subtotal from produtos_pedidos", bdcon); MySqlDataReader dr2 = cmd2.ExecuteReader(); if (dr.Read()) { sr_Produto.Write(dr["subtotal"].ToString()); } bdcon.Close(); bdcon.Open(); StreamWriter sr_Valor = new StreamWriter(@"C:\Enzo\PAP\PAP\Ficheiros\valor.txt", true); MySqlCommand cmd3 = new MySqlCommand("SELECT valor from produtos"); MySqlDataReader dr3 = cmd3.ExecuteReader(); if (dr.Read()) { sr_Produto.Write(dr["valor"].ToString()); } bdcon.Close();
如果有人能帮助我,我会很高兴。
如果您查看代码,您正在创建
MySqlDataReader dr
并加载它,然后关闭它并创建并加载MySqlDataReader dr1
。然后,您尝试读取已关闭的dr
。看起来您也可能试图写入错误的 StreamWriter。