注册 登录
编程论坛 C# 论坛

我的文件导出是不是写的有问题!望高手检查一下哪有问题

alina4122015 发布于 2013-11-14 10:51, 475 次点击
如果第二次导出同一文件夹下会在原有的文本下面继续添加,而且选择桌面路劲导出不了   
private void button5_Click(object sender, EventArgs e)
        {
            FolderBrowserDialog dialog = new FolderBrowserDialog();
            dialog.Description = "请选择文件路径";
            if (dialog.ShowDialog() == DialogResult.OK)
            {
                string foldPath = dialog.SelectedPath;
                string path = @foldPath + "PosDesBack.CSV";
                StreamWriter sw = new StreamWriter(path, true, Encoding.Default);
                foreach (PosDes pd in _posdesList)
                {
                    sw.WriteLine(string.Format("{0},{1},{2},{3}", pd.PosID, pd.Longitude, pd.Latitude, pd.PosDes));
                }
                sw.Close();
                MessageBox.Show("导出完成");
            }
        }
3 回复
#2
alina41220152013-11-14 14:03
晕!每次都等自己解决了,都还是没人回复
#3
Aviva_Wang2013-11-14 14:26
保存CSV名称一样当然是继续添加啦
至于你说的桌面路劲导出不了 ,没有明白你的说法  
#4
alina41220152013-11-14 16:48
起始桌面路径是导出的,问题是路径的桌面后面不带\\符号,说以只在我的用户名下的文件夹出现了,而且出现的名字是桌面+自定义名!!要做个判断路径末尾判断!就能解决了
文本问题将StreamWriter sw = new StreamWriter(path, true, Encoding.Default);改为StreamWriter sw = new StreamWriter(path, false, Encoding.Default);就可以了直接覆盖了!!因为这样不保险,我有在文件名中添加了当前时间值,可以保证没一个到处文件都可以记录时间,而且文件名不重复
1