保存文件并在同一时间上传

时间:2012-04-28 13:25:38

标签: c#

我正在编写一个应用程序,每1秒创建基于时间戳的文件,然后将它们移动到另一个文件夹,然后将它们作为帖子发送到web服务,并将它们保存在文件夹中。 运行生成函数时,它会成功生成。 当运行上传功能时,它会成功上传它们。 但是当运行它们和后台工作程序组件时,第一个工作正常,但上传机制告诉em该文件由另一个进程打开。 我怎么解决这个问题? THX

1 个答案:

答案 0 :(得分:0)

处理实现IDisposable接口的类(例如文件流类)时的一个好习惯是将这些类用法包装在unsing语句中。 From MSDN

    //Create the file.
    using (FileStream fs = File.Create(path))
    {
        AddText(fs, "This is some text");
        AddText(fs, "This is some more text,");
        AddText(fs, "\r\nand this is on a new line");
        AddText(fs, "\r\n\r\nThe following is a subset of characters:\r\n");

        for (int i=1;i < 120;i++)
        {
            AddText(fs, Convert.ToChar(i).ToString());

        }
    }

您应该注意的另一件事是多线程同步。也许你的“上传”后台工作者试图在“生成文件”后台工作者有时间完成创建之前访问该文件。