问题标签 [qfilesystemwatcher]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
qt - Windows 上的 Qt QFileSystemWatcher
我有以下问题:我创建了一个QFileSystemWatcher
,它在 Linux 上运行和运行良好,但在 Windows 7 上没有。你能在代码中发现任何可能使它无法工作的东西吗?
谢谢。
这是初始化它的代码:
这应该是完成工作的插槽:
c++ - “QFileSystemWatcher:添加路径失败”但仍然有效
我需要监视一个文件系统,我有一个函数可以递归地浏览文件夹和文件,并将它们的路径添加到我的 QFileSystemWatcher :
运行时,每个“watcher.addPath(iterator.filePath());” 我在控制台中有此错误消息:
QFileSystemWatcher:添加路径失败:C:/.../anyfile.ext
最奇怪的是它仍然有效。当我重命名/编辑文件或文件夹时,会触发 fileChanged 和 folderChanged 事件。
任何人都知道发生了什么?我担心我的程序不稳定,这个错误不能白白显示。
感谢阅读和帮助,
拉斐尔。
c++ - QFileSystemWatcher::addPath 递归
大家好,我想用来QFileSystemWatcher
递归地观察给定目录及其子目录的变化,但void QFileSystemWatcher::addPath ( const QString & path )
没有让我这样做,所以有什么想法可以轻松完成,或者我应该自己实现它(提取所有目录和子目录和添加void QFileSystemWatcher::addPaths ( const QStringList & paths )
) 下的文件?
任何帮助将不胜感激。
先感谢您。
c++ - 如何知道文件被打开了?QT
我想知道用户是否打开了文件进行阅读(双击或使用...打开),我正在C++
Windows 上使用 Qt Creator 编写应用程序,经过一些研究后我发现 QFileSystemWatche,但它让我知道只有更改发生在特定文件夹中。
void QFileSystemWatcher::fileChanged ( const QString & path ) [信号] 当指定路径上的文件被修改、重命名或从磁盘中删除时发出此信号。
如何知道文件是否被打开?或者有没有办法在打开或关闭文件时修改文件?
请有什么想法!!!
c++ - QFileSystemWatcher:检测删除和添加的文件,但没有修改一个
我正在使用 Qt 在 Windows 上开发应用程序,我需要检测特定文件夹中的更改。因此,我使用了 QFileSystemWatcher,并将 directoryChanged 信号连接到一个函数,该函数将在发生更改时发送消息。
问题是,如果我修改文件的内容,则不会调用连接到 directoryChanged 的“插槽”函数,而只会在删除或添加文件或目录时调用。
但是,文档说,当“指定路径的目录被修改(例如,当添加、修改或删除文件时)或从磁盘中删除时,会发出此信号。”
有人有解释吗?提前感谢=)
python - 为什么 QFileSystemWatcher 适用于目录而不适用于 Python 中的文件?
我从另一个 StackOverflow 答案中借用了这段代码:
问题是,file_changed
无论如何,永远不会被调用。directory_changed
例如,在添加文件时会可靠地调用,但更改文件内容不会导致调用 file_changed。
我调用了 的一些变体QtCore.SIGNAL('fileChanged(QString)')
,例如 ,QtCore.SIGNAL('fileChanged(const QString &)')
但无济于事。没有警告或错误——它根本不会触发该功能。
建议?
c++ - Windows 上的 C++ Qt 5.0.2 QFileSystemWatcher 看不到目录更改
我对 Windows 上 Qt 5.0.2 的 QFileSystemWatcher 有疑问。
测试.cpp
DirectoryWatcher.cpp
我遇到的问题是,即使我在“C:/data/watch”文件夹中创建/移动/编辑文件,也不会调用函数“showModified”或“showChanged”,即使他们有
我确信插槽的名称是正确的,因为如果我将作为参数的插槽的名称更改为不存在的插槽,我会收到一个错误:
我还确定我作为路径添加的目录存在,因为在列出时:
我得到我的目录:
并且文档明确指出:(http://qt-project.org/doc/qt-5.0/qtcore/qfilesystemwatcher.html#addPath)
很明显我错过了一些东西。如果有人能指出我的错误在哪里,或者甚至给出另一种解决方案来解决我的问题,将不胜感激。
对你的帮助表示感谢。谢谢你。
c++ - C++ Qt QFileSystemWatcher 文件上传双
我遇到文件被上传两次到服务器的问题。
我在 Windows XP 上使用 C++ Qt 中的 QFileSystemWatcher 类在文件夹更改时发送文件文件很小(1-12kb)。
应用程序通过在文件夹更改时(在 directoryChanged 信号上)扫描文件夹来发送文件,循环浏览文件并发送我需要的文件。服务器响应一个 xml 文件,该文件返回到同一文件夹中,以供另一个应用程序处理它。
显然正在发生的事情是,在某些系统上,几乎同时有 2 个非常快的 directoryChanged 信号,并且发生了两个非常快的文件上传。
服务器正在运行 Apache 和 PHP,并且在 PHP 端有一个简单的 MUTEX,但我只是想找到问题的根源,这似乎在 Qt 端。我愿意使用另一个类、另一个库或直接 C++。
这是一些代码,我剥离了所有不相关的内容:
和 DirectoryWatcher.cpp:
谢谢你的帮助。
qt - Qt 信号驱动的尾部程序
我正在寻找创建一个简单的'tail'类型程序,它打印出附加到文件的新行。有没有办法在以下情况下捕获信号,而不是不断轮询文件统计信息以获取更新的修改日期:
- 该文件已附加到
- 该文件已重命名
- 出现一个给定名称的新文件
这是我需要设计的三个要求。我发现 QFileSystemWatcher 会给我这 3 个信号(我认为)......但信号很简单......没有关于发生了什么变化的细节,所以我仍然需要调用 stat. 有什么方法可以从 QFileSystemWatcher 获取此信息?
python - 为什么我按确定后程序退出
我编写了一个程序来监视目录并在用户添加文件时发出警报,该文件的特定格式为 user-name.files 它工作正常,但是当我按 ok 收到新文件正在添加的警报时,程序退出,我希望它继续运行。
我编写的以下代码将作为该应用程序中另一个 PYQT 应用程序的子进程运行。因此,我不会执行 main(),而只会实例化 SendMyFiles 对象。