python執行個體26[查詢修改檔案的屬性]

來源:互聯網
上載者:User

python來獲得檔案的

通用屬性:大小,修改時間等;

去掉檔案的readonly屬性;

對於windows檔案,可以獲得是否archive,檔案的版本資訊等;

 

代碼:

import os
def TestFileAttributes():
  # This function is platform indepedent.
  statinfo = os.stat("c:\\python26\\python.exe")
  print statinfo.st_size
  print statinfo.st_atime
  print statinfo.st_mtime
  print statinfo.st_ctime
  #statinfo also include other linux specific information.
  #print statinfo
  
TestFileAttributes()
#27136
#1299820024.28
#1228458748.0
#1228458748.0

import stat
def TestForChangeToWrite(path):
  # This is platform indepedent.
    if not os.access(path,os.W_OK):
        os.chmod(path,stat.S_IWRITE)
        
TestForChangeToWrite("c:\\python26\\python.exe")

##################################################################

import win32api,win32con
def TestWinFileAttributesIfReadonly():
  # This is just for windows.
  fattrs = win32api.GetFileAttributes("c:\\python26\\python.exe")
  #print fattrs
  print bool(fattrs & win32con.FILE_ATTRIBUTE_READONLY) 
 
TestWinFileAttributesIfReadonly()
#False

def TestWinFileAttributesIfHidden():
  # This is just for windows.
  fattrs = win32api.GetFileAttributes("c:\\python26\\python.exe")
  #print fattrs
  print bool(fattrs & win32con.FILE_ATTRIBUTE_HIDDEN) 
 
TestWinFileAttributesIfHidden()
#False

from win32api import GetFileVersionInfo, LOWORD, HIWORD
def get_version_number(filename):
  # This is just for windows.
  info = GetFileVersionInfo(filename, "\\")
  #print info
  ms = info['FileVersionMS']
  ls = info['FileVersionLS']
  print HIWORD (ms), LOWORD (ms), HIWORD (ls), LOWORD (ls)
  
get_version_number("C:\\Program Files\\7-Zip\\7z.exe")
#9 20 0 0

 

完!

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.