C#数据库读取数据 第一行读不出来

while(ODR.Read())//ODR是ExecuteReader()的返回值并且已经正确读取到了数据{StreamWritersw=newStreamWriter... while (ODR.Read()) //ODR是ExecuteReader()的返回值并且已经正确读取到了数据

{
StreamWriter sw = new StreamWriter("C:\\Users\\Administrator\\Desktop\\新建文件夹 (2)\\新建文本文档 (3).txt", false, Encoding.GetEncoding("GB2312"));
for (int i = 0; i < ODR.FieldCount; i++)
{
sw.Write(ODR.GetValue(i));
}
sw.Writeline();

sw.Close();
}
以上代码本来应该读到两行数据,但是只读到了第二行数据,第一行消失了.尝试将while改成do while后报错:{"没有数据可用于行或列。"}
展开
 我来答
内裤最大功能
2015-04-16 · TA获得超过3105个赞
知道大有可为答主
回答量:3202
采纳率:79%
帮助的人:481万
展开全部
DataReader是逐行读取的,直到读取不到数据就跳出while(.Read())
也就是说每读取一行数据,就执行一次while里代码----就重新定义一个流对象,进行覆盖了。原先的txt里内容就被覆盖了。
你把false参数改成true。

推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式