C#创建一个txt文件,之后想点击一个按钮 往这个txt文件里写入一些值如,但程序提示文件诤友另一进程使用

这是我判断有无文件夹和文件的代码,诺没有自行创建stringDirPath=@"D:\TimerTXT";stringFilePath=DirPath+@"\IDandT... 这是我判断有无文件夹和文件的代码,诺没有自行创建
string DirPath = @"D:\TimerTXT";
string FilePath = DirPath + @"\IDandTime.txt";
if (!Directory.Exists(DirPath))
{
Directory.CreateDirectory(DirPath);
}
if (File.Exists(FilePath))
{
File.Delete(FilePath);
File.Create(FilePath);
}
else
{
File.Create(FilePath);

}
这是我点击按钮想往里写123321这个字符串的代码
string DirPath = @"D:\TimerTXT";
string FilePath = DirPath + @"\IDandTime.txt";
FileStream fs = new FileStream(FilePath, FileMode.Open, FileAccess.Read, FileShare.ReadWrite);
// 2,创建读存储器
StreamWriter sw = new StreamWriter(fs);
// 3,读操作
// RTxtRec.Text = sr.ReadToEnd();
sw.WriteLine("123321");
// 4,5, 释放
sw.Close();
fs.Close();

但程序运行时点击按钮会报错:文件“D:\TimerTXT\IDandTime.txt”正由另一进程使用,因此该进程无法访问该文件。
展开
 我来答
leiyangbdwk
2013-05-06 · TA获得超过3295个赞
知道大有可为答主
回答量:4975
采纳率:12%
帮助的人:4405万
展开全部
//只改这一点就可以了
File.Create(FilePath).Dispose();
追问
是在加这一句 还是把这句File.Create(FilePath)改成File.Create(FilePath).Dispose();?
追答
改成。
QQ2k5
2013-05-06 · TA获得超过438个赞
知道小有建树答主
回答量:911
采纳率:25%
帮助的人:261万
展开全部
using(FileStream fs = new FileStream(FilePath, FileMode.Open, FileAccess.Read, FileShare.ReadWrite))
{
// 2,创建读存储器
using( StreamWriter sw = new StreamWriter(fs))
{
// 3,读操作
// RTxtRec.Text = sr.ReadToEnd();
sw.WriteLine("123321");
}
}
这么写,因为你没有dispose
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
火星人01号
2013-05-06
知道答主
回答量:18
采纳率:0%
帮助的人:14.8万
展开全部

是因为你创建文件后没有释放对象

可以像这样写

FileStream fs = File.Create(FilePath);
fs.Close();
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
sha940207
2013-05-06
知道答主
回答量:5
采纳率:0%
帮助的人:7702
展开全部
没有释放掉资源 直接关闭不行的 东西没有释放掉 他还是存在的
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式