python服務器搭建,python檢測excel是否打開_Python判斷遠程服務器上Excel文件是否被人打開的方法_學領未來...

 2023-12-06 阅读 27 评论 0

摘要:最近工作中需要去判斷遠程服務器上的某個Excel文件是否被打開,如果被人打開,則等待,如果沒人打開使用,則去填寫數據進Excel文件。開始想的很簡單,和其他語言一樣,比如C#,打開文件,如果報錯說明被占用,結果發現

最近工作中需要去判斷遠程服務器上的某個Excel文件是否被打開,如果被人打開,則等待,如果沒人打開使用,則去填寫數據進Excel文件。

開始想的很簡單,和其他語言一樣,比如C#,打開文件,如果報錯說明被占用,結果發現,Excel文件被其他人打開的情況下,python里面用可寫'w'的方式打開文件,實際上并沒有報錯,執行完成也沒任何錯誤,只是最后看Excel文件里面,發現實際要寫入的東西并沒被寫入。

然后在網上找了一些方法,比如用openpyxl,pywin32等等,發現都做不到真正去判斷Excel文件是否被其他人打開了。

后來想到一個解決方法:判斷是否有“~$”開頭的同名文件在同級目錄下存在:比如test.xlsx被打開后會存在~$test.xlsx文件,如果沒被打開則沒有該文件。

python服務器搭建?Excel文件(具體來說應該是MS office文件)每次被打開后其實是會創建一個隱藏的"~$"開頭的系統隱藏文件,比如打開test.xlsx后同級目錄下其實是會有~$test.xlsx文件:

因為~$test.xlsx是系統隱藏文件,如果要看到的話,需要顯示所有系統隱藏文件信息,方法如下:

點擊任一文件夾左上角的“文件”

點擊“選項”打開“文件夾選項”

點擊“查看”條目,勾選“顯示隱藏的文件、文件夾和驅動器”,然后去掉“隱藏受保護的操作系統文件(推薦)”的勾選

python調用瀏覽器打開網頁?這樣就可以看到~$test.xlsx這個隱藏文件了。

知道了這個方法后,要去判斷Excel文件是否被打開就很容易了,只需要判斷~$test.xlsx文件是否存在即可,如果存在則認為test.xlsx文件被人打開,等待關閉,否則則認為該文件沒人打開,直接編輯即可。

對于本地和遠程服務器上的Excel文件否是被打開都可以用該方法。

版权声明:本站所有资料均为网友推荐收集整理而来,仅供学习和研究交流使用。

原文链接:https://hbdhgg.com/2/187971.html

发表评论:

本站为非赢利网站,部分文章来源或改编自互联网及其他公众平台,主要目的在于分享信息,版权归原作者所有,内容仅供读者参考,如有侵权请联系我们删除!

Copyright © 2022 匯編語言學習筆記 Inc. 保留所有权利。

底部版权信息