c#IO问题。

free_loop 2013-07-10 01:23:22

StreamReader sr = new StreamReader("c:\\t.ini", System.Text.Encoding.UTF8);
int i = 0;
while(sr.ReadLine()!=null){
arli[i] = sr.ReadLine();
MessageBox.Show(arli[i]);
i++;
}
sr.Close();


t.ini文件内容:
e:1
e:2
e:3
e:4
e:5
我把以上代码放在一个单击事件里,单击按钮时得到的并不是我想象的按顺序弹出1到5,而是弹出2、4、空白。请教问题出在哪里,请高手修改。我是初学者,大神看到如果觉得这问题幼稚别喷我。
...全文
83 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
free_loop 2013-07-10
  • 打赏
  • 举报
回复
引用 3 楼 yanghl1998 的回复:
你的意思是如何知道读到了最后一行,是不是? 深夜就不打开vs 了... 好像是有一个属性 eof (EndOf) , 或者是 string xx= sr.ReadLine(); if (xx ==null) 就是最后一行了 你改成如下: string line while ((line = sr.ReadLine()) != null) { MessageBox.Show(line ) }
  StreamReader sr = new StreamReader("c:\\t.ini", System.Text.Encoding.UTF8);
           
            while (!sr.EndOfStream) {
               MessageBox.Show(sr.ReadLine());
            }
                   
            sr.Close();
效果达到,多谢。结贴了。 顺便说下while ((line = sr.ReadLine()) != null) 你这样写让我纠结了一下。字符串不能用来当做条件。 看来都有通病,遇到让我们手写代码的时候就焉了。。
yanghailun_ 2013-07-10
  • 打赏
  • 举报
回复
你的意思是如何知道读到了最后一行,是不是? 深夜就不打开vs 了... 好像是有一个属性 eof (EndOf) , 或者是 string xx= sr.ReadLine(); if (xx ==null) 就是最后一行了 你改成如下: string line while ((line = sr.ReadLine()) != null) { MessageBox.Show(line ) }
free_loop 2013-07-10
  • 打赏
  • 举报
回复
引用 1 楼 yanghl1998 的回复:
while(sr.ReadLine()!=null){ arli[i] = sr.ReadLine(); MessageBox.Show(arli[i]); i++; } 问题在上面标注为红色的部分。 sr.ReadLine() 执行一次,读了一次。 所以你循环一次,相当于读了两次.
      StreamReader sr = new StreamReader("c:\\t.ini", System.Text.Encoding.UTF8);
           
            for (int i = 0; i < 5; i++)
            {
                arli[i] = sr.ReadLine();
                MessageBox.Show(arli[i]);
              
            }
           
            sr.Close();
我改成这样有了我想要的结果,但是for循环里的5是不确定的。while里的循环读了一次,我懂了。那应该怎么修改? PS:深夜还有人在,有点欣慰。
yanghailun_ 2013-07-10
  • 打赏
  • 举报
回复
while(sr.ReadLine()!=null){ arli[i] = sr.ReadLine(); MessageBox.Show(arli[i]); i++; } 问题在上面标注为红色的部分。 sr.ReadLine() 执行一次,读了一次。 所以你循环一次,相当于读了两次.

110,533

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧