【问题标题】:Detecting changes in a txt file检测 txt 文件中的更改
【发布时间】:2022-12-05 22:24:10
【问题描述】:

我是一名初学者 python 程序员,我想知道是否有任何方法可以检测 Windows 上 txt 文件的更改。任何建议表示赞赏。

【问题讨论】:

    标签: python windows txt


    【解决方案1】:

    有很多方法可以使用它:

    • 例如,您可以使用 os.path.getmtime(path) 每隔几秒检查一次文件的最后修改日期,当日期更改时您知道文件已被编辑。

    • 您还可以在文件上使用某种形式的校验和 (generate md5 hash of a file) 并每隔几秒检查一次校验和是否更改(在大文件上可能会变慢,因为校验和需要读取整个文件)

    • 您还可以直接监听信号send by windows,并在收到信号时执行事件处理程序,这更难实现,但到目前为止是最简洁的方法。 (编辑,这似乎是@martin kamau 在他的回答中建议的)

    • 可能还有很多我现在想不到的方式......

    【讨论】:

      【解决方案2】:

      要监视文件中的文件更改,可以使用以下代码:

      import time
      import fcntl
      import os
      import signal
      
      filename = "nameofthefile"
      
      def handler(signum, frame):
          print "File %s modified" % (FNAME,)
      

      我找到了这段代码here

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2016-02-13
        • 2018-02-25
        • 2019-02-07
        • 1970-01-01
        • 1970-01-01
        • 2022-09-23
        相关资源
        最近更新 更多