这种数据交换一般采用的方式是
上传成临时文件,
改名(或者更换目录)
这种方式进行操作 ftp操作文件系统没有事务可言,传到哪算哪.所以timer访问的文件
很可能是不完整的文件.

解决方案 »

  1.   

    首先感谢gujunyan(ivy阿亮)兄弟:可是可能存在这样的问题:更换目录就相当于我把临时文件copy到一个timer监控的目录,在文件copy过程中是否也存在我上述所说的问题?
      

  2.   

    更换目录或更名只是在操作文件分配表,这种问题就不会存在了,因为不会影响文件数据链.
    中国海关的edi中心就是这样操作的.肯定没问题.
      

  3.   

    非常感谢gujunyan(ivy阿亮)兄弟的帮助:
    1、更换目录是不是相当于我把临时文件copy到一个timer监控的目录?
    2、如果只是rename文件夹,我怎么用timer监控这个文件夹。
    谢谢!!
      

  4.   

    timer操作之前先以独占方式打开以下,
    如果失败说明该文件尚未被释放,
    如果成功则可以操作。
      

  5.   

    .net提供了一个进行文件系统监测的类(你可以在MSND上找到,我记得在IO命名空间下面),可以对任何目录的任何操作进行监控,用这个类要比使用Timer方便多了。侦听文件系统更改通知,并在目录或目录中的文件发生更改时引发事件。有关此类型所有成员的列表,请参阅 FileSystemWatcher 成员。System.Object
       System.MarshalByRefObject
          System.ComponentModel.Component
             System.IO.FileSystemWatcher
      

  6.   

    1、更换目录是不是相当于我把临时文件copy到一个timer监控的目录?