pyChecknum.py 835 B

1234567891011121314151617181920212223242526272829303132333435
  1. #!/usr/bin/env python
  2. # -*- coding: utf-8 -*-
  3. import os
  4. import shutil
  5. import argparse
  6. #查看文件后的16进制数据
  7. def ReadBinFile(file):
  8. f=open(file,'rb') #二进制打开文件
  9. size =os.path.getsize(file) #获取文件大小
  10. print(file, size)
  11. checknum = 0
  12. for i in range(size):
  13. datas = f.read(1)
  14. checknum += datas[0]
  15. f.close()
  16. checknum_str = '{:08X}'.format(checknum)
  17. print("checknum", checknum_str)
  18. filename, file_type = os.path.splitext(file)
  19. shutil.copyfile(file, filename+"["+checknum_str+"]"+file_type)
  20. return checknum
  21. if __name__ == "__main__":
  22. parser = argparse.ArgumentParser()
  23. parser.add_argument("n", help="bin文件名,譬如 COAB21232D.bin")
  24. args = parser.parse_args()
  25. project = str(args.n)
  26. ReadBinFile(project)