C# 如何新建txt文档保存数据 或者追加数据 而不是覆盖之前的txt文档

qaqaqaaaaaa 2020-03-11 03:58:01
private void Save()
{
int num = (int)Convert.ToInt16(comboBox1.SelectedItem);
if (listBox2.Items.Count == num)
{
string path = tbx_Save.Text;
string NowTime = DateTime.Now.ToString("yyyy-MM-dd HH");
File.WriteAllText(path + "\\" + NowTime + ".txt", null);
StreamWriter sw = new StreamWriter(path + "\\" + NowTime + ".txt");
for (int i = 0; i < num && listBox2.Items.Count > 0; i++)
{
string data = listBox2.Items[0].ToString();
sw.Write(data);
sw.WriteLine();
listBox2.Items.RemoveAt(0);
}
//清空缓冲区、关闭流
sw.Flush();
sw.Close();
}
}

这是我的代码 现在问题是 当我有收到数据后 会把ListBox2中的数据保存在我指定的路径下 不断地收数据 就会覆盖前一次的txt文档 包括数据 我想保留所有数据 或者不断地新建txt吧 不想覆盖 怎么解决
...全文
517 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
Bridge_go 2020-03-11
  • 打赏
  • 举报
回复
存在同名的文件就附加,不存在就创建
qaqaqaaaaaa 2020-03-11
  • 打赏
  • 举报
回复
引用 8 楼 姎楹 的回复:
while在这里相当于if

是的 我刚去了解了 break'并不会影响循环外
姎楹 2020-03-11
  • 打赏
  • 举报
回复
while在这里相当于if
qaqaqaaaaaa 2020-03-11
  • 打赏
  • 举报
回复
谢谢 麻烦你们了 先结帖
qaqaqaaaaaa 2020-03-11
  • 打赏
  • 举报
回复
引用 5 楼 Bridge_go 的回复:
File.WriteAllText(path + "\\" + NowTime + ".txt", null);
这句去掉

嗯 这样的话 就是将数据不断地追加 但是不会再新建txt 暂时解决了 后续有问题 再请教
Bridge_go 2020-03-11
  • 打赏
  • 举报
回复
File.WriteAllText(path + "\\" + NowTime + ".txt", null); 这句去掉
qaqaqaaaaaa 2020-03-11
  • 打赏
  • 举报
回复
引用 1 楼 姎楹 的回复:
https://bbs.csdn.net/topics/380238963
看看这个行不行

在for循环外面再加while循环break后 是不是会导致程序出错
qaqaqaaaaaa 2020-03-11
  • 打赏
  • 举报
回复
引用 2 楼 Bridge_go 的回复:
StreamWriter sw = new StreamWriter(path + "\\" + NowTime + ".txt",true)

我试了 没用 依然是覆盖之前保存进去的数据
Bridge_go 2020-03-11
  • 打赏
  • 举报
回复
StreamWriter sw = new StreamWriter(path + "\\" + NowTime + ".txt",true)
姎楹 2020-03-11
  • 打赏
  • 举报
回复
https://bbs.csdn.net/topics/380238963 看看这个行不行

110,538

社区成员

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

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

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