php 系统交互 删除文件_FileSystemMap:与文件系统交互的自然方法
php 系統交互 刪除文件
作為項目的一部分,我目前正在研究創建FileSystemMap 。 我已經開始了一個非常小的GitHub的項目在這里舉辦的代碼。
本質上,此映射實現將允許用戶與其文件系統上的目錄進行交互,就好像它是java.util.Map 。 映射中的每個條目將是該目錄中的文件,鍵將是文件名,值將是文件的內容。
此代碼構建一個FileServiceMap并添加五個條目:
Map map = new FileSystemMap("/tmp/filetests");map.put("one", "one");map.put("two", "two");map.put("three", "three");map.put("four", "four");map.put("five", "five");這將導致這樣的直接結構:
/tmp/filetests/|----- five|----- four|----- one|----- three|----- two添加和刪??除條目將更改目錄中的文件。 更改條目的值將導致使用新值作為內容重寫文件。 有關更多示例,請參見testMapMethods中的代碼。
此外, FileSystemMap已設計用于雙向交互。 對其進行的任何程序性更新都將反映在文件系統上,并且對文件系統的任何更新將由地圖拾取并作為事件觸發。
此代碼將更改注冊到文件系統并打印出來:
Map map = new FileSystemMap("/tmp/filetests"); map.registerForEvents(System.out::println);這是一些示例輸出:
FPMEvent{eventType=NEW, programmatic=true, key='one', value='one'}eventType是以下之一:
- 新增–文件已創建
- 更新–文件已被修改
- 刪除–文件已被刪除
編程標志指示是否觸發事件的是FileSystemMap本身。 例如,如果調用了put() ,將創建一個文件,該文件又將引發一個事件。 為了避免反饋,了解它是否是觸發事件的FileSystemMap上的操作可能很有用。
密鑰是已更改文件的名稱。
該值是與已更改文件關聯的最新值。 注意:這可能是也可能不是實際觸發更改的值 。 例如,如果條目有兩個非常快速的更改,則完全有可能在第二次更新已經發生后,第一個事件的值將獲取該值。 例如
可能產生以下輸出:
FPMEvent{eventType=NEW, programmatic=true, key='one', value='2'}拾取了第一個事件(通過將“ one”設置為“ 1”觸發),但是在程序檢查文件內容時,文件已更改為“ 2”。 然后拾取第二個事件(通過將“ 1”設置為“ 2”觸發),但是由于該值未更改,因此將其抑制。
一些注意事項:
不用說,此類是為特定的實用程序而不是任何性能而設計的。
歡迎對該項目的所有貢獻!
翻譯自: https://www.javacodegeeks.com/2015/04/filesystemmap-a-natural-way-to-interact-with-your-file-system.html
php 系統交互 刪除文件
總結
以上是生活随笔為你收集整理的php 系统交互 删除文件_FileSystemMap:与文件系统交互的自然方法的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 怎么样制作直接吃的奶油 蛋白加白糖制作奶
- 下一篇: java cuba_CUBA平台–新的J