DataReader是逐行读取的,直到读取不到数据就跳出while(.Read())也就是说每读取一行数据,就执行一次while里代码----就重新定义一个流对象,进行覆盖了。原先的txt里内容就被覆盖了。你把false参数改成true。