搜索客戶端計算機(以及其他安裝的驅動器)對圖像的最快搜索方式是什麼?我的客戶將安裝一個桌面應用程序,它是在Python,但我可以添加C++代碼,如果是快...針對特定文件搜索客戶端計算機
3
A
回答
3
如果你的平臺是Win32中,使用C++,你可以簡單地使用WINAPI功能
然後
作爲文件名,您可以爲通用圖像格式(如jpg,jpeg,png,bmp等)提供通配符。
如果您想要額外的速度,可以在不同的線程上運行函數,然後同步結果。
編輯:
對於獨立於平臺的解決方案,您可以使用boost::filesystem類或與boost::filesystem
遞歸搜索文件爲了更好地implenetation Qt的QDir
示例代碼中,我強烈地爲您提供閱讀boost::filesystem文件
對於QDir例
filesStack = new QStack<QString>();
QDir selectedDir("C:\\");
selectedDir.setFilter(QDir::Files | QDir::Dirs | QDir::NoDot | QDir::NoDotDot);
QStringList qsl; qsl.append("*.bmp");
selectedDir.setNameFilters(qsl);
findFilesRecursively(selectedDir);
void findFilesRecursively(QDir rootDir)
{
QDirIterator it(rootDir, QDirIterator::Subdirectories);
while(it.hasNext())
{
filesStack->push(it.next());
}
}
2
對於python
,簡單地使用內置的功能從os
模塊將是一個適當的跨平臺解決方案。對於C++
,我建議使用boost filesystem,這將是迄今爲止最痛苦的解決方案。
至於速度,好吧,它可能無所謂。這些功能將完全受I/O限制。理論上,你可以對此進行編程,但是如果它位於同一個驅動器上,它仍然會受到I/O限制。如果它位於不同的驅動器上,它可能會提高一些速度,雖然像往常一樣,在優化之前進行配置。
相關問題
- 1. 在計算機上搜索「.myox」文件
- 2. C#計算機中的搜索文件
- 3. 使用nodejs檢索客戶端計算機用戶名
- 4. 從webservice中檢索客戶端用戶名和計算機名
- 5. 遠程調試客戶端計算機
- 6. 獲取客戶端計算機名稱
- 7. 要求客戶端計算機
- 8. 從PHP啓動客戶端計算機上的文件?
- 9. 刪除客戶端計算機上的文件
- 10. sharepoint 2010客戶端對象搜索
- 11. 通過對象,客戶端搜索?
- 12. JQuery客戶端搜索
- 13. jqGrid客戶端搜索
- 14. 客戶端的JqGrid搜索
- 15. 客戶端搜索引擎
- 16. 在GWT中確定客戶端計算機上文件夾的存在
- 17. 指定按鈕在Cocoa中搜索計算機文件
- 18. 連接後發送對象到客戶端計算機
- 19. IIS:對不在域中的客戶端計算機使用Kerberos
- 20. C++控制檯 - 按特定編號搜索客戶端
- 21. 將文件下載到客戶端計算機後,文件權限被更改
- 22. 確定客戶端的計算機名稱
- 23. 如何通過封閉網絡搜索特定計算機?
- 24. AD在搜索用戶時返回計算機對象
- 25. 如何在計算機上搜索文件和文件夾
- 26. 彈性搜索拋出客戶端客戶端搜索錯誤響應
- 27. VIM搜索 - FuzzyFinder搜索特定文件
- 28. 獲取客戶端計算機的狀態硬件狀態
- 29. 針對特定客戶的Linq計數產品
- 30. 從客戶端計算機啓用遠程計算機上的WinRM
哪個平臺基於Win32或Unix? – accfews 2013-04-05 05:52:35
我用os.walk()和glob模塊做這樣的任務 – 2013-04-05 05:55:19
最好是Win32和基於Unix的 – Kiarash 2013-04-05 05:58:54