zoukankan      html  css  js  c++  java
  • python实例26[查询修改文件的属性]

    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

    完!

  • 相关阅读:
    自动化测试过程中所入的坑3——解决问题思维的转换
    自动化测试所入的坑2
    js原生触发angular事件
    Selenium2Library源码中browser的传递
    Selenium自动化测试中的等待
    Android adb 命令学习笔记
    Robot学习笔记
    Xpath 与Css 定位方式的比较
    Selenium填坑笔记
    python批量更改文件名
  • 原文地址:https://www.cnblogs.com/itech/p/2103935.html
Copyright © 2011-2022 走看看