当前位置:编程学习 > C#/ASP.NET >>

C# 把数据写入csv文件异常:文件无法访问,正在被另一进程访问?FileMode

想把winform文件的内容存到csv文件中。
1.点击保存按钮时这样处理:
            SaveFileDialog saveFileDialog1 = new SaveFileDialog();
            saveFileDialog1.Filter = "csv files (*.csv)|*.csv|txt files (*.txt)|*.txt|All files (*.*)|*.*";
            saveFileDialog1.FilterIndex = 1;
            saveFileDialog1.InitialDirectory = txtFile.Text;
            saveFileDialog1.RestoreDirectory = true;
            Stream myStream;
            try
            {
                if (saveFileDialog1.ShowDialog() == DialogResult.OK)
                {
                    if ((myStream = saveFileDialog1.OpenFile()) != null)
                    {
                        //获得文件路径
                        filename = saveFileDialog1.FileName.ToString();

                        FileStream _file = new FileStream(filePathName, FileMode.OpenOrCreate,           FileAccess.ReadWrite, FileShare.ReadWrite);
           (1) using (StreamWriter fileWriter = new StreamWriter(_file))
            {         
                fileWriter.WriteLine(String.Join(",", strArr));
                fileWriter.Flush();
            }

问题1:此时(1)using语句会出现异常,说文件无法访问。不管FileMode和FileAccess怎么改,都是这个异常。只有把上面的代码中FileAccess改为Read,才没有这个异常。但是又不能定义StreamWriter 了。我的目的就是要write呀。

问题2:我这样处理保存文件正确么?怎么把内容保存到原文件,就是取数据的文件?

求高人指点,这是新工作第一个活,不能搞砸啊! --------------------编程问答-------------------- cvs 文件的格式,可以用notepad.txt打开,并且格式不变!!
所以就相当于写TXT文件了。

网上有很多实例。GoodLuck!
补充:.NET技术 ,  .NET Framework
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,