checkout.py 1.6 KB

123456789101112131415161718192021222324252627282930313233343536373839
  1. # 假设我们有一个名为'example.txt'的文件,我们想要修改它
  2. header_file_path = 'inc/ht32_usbd_core.h'
  3. source_file_path = 'src/ht32_usbd_core.c'
  4. def modification(file_path):
  5. # 打开文件
  6. with open(file_path, 'r+') as file: # 'r+'模式允许读写
  7. # 读取文件内容
  8. content = file.read()
  9. print("文件打开成功!")
  10. # 假设我们要将所有的'old_string'替换为'new_string'
  11. # updated_content = content.replace('old_string', 'new_string')
  12. content = content.replace('USB_STATE_UNCONNECTED', 'USER_USB_STATE_UNCONNECTED')
  13. content = content.replace('USB_STATE_ATTACHED', 'USER_USB_STATE_ATTACHED')
  14. content = content.replace('USB_STATE_POWERED', 'USER_USB_STATE_POWERED')
  15. content = content.replace('USB_STATE_SUSPENDED', 'USER_USB_STATE_SUSPENDED')
  16. content = content.replace('USB_STATE_DEFAULT', 'USER_USB_STATE_DEFAULT')
  17. content = content.replace('USB_STATE_ADDRESS', 'USER_USB_STATE_ADDRESS')
  18. content = content.replace('USB_STATE_CONFIGURED', 'USER_USB_STATE_CONFIGURED')
  19. # 移动文件指针到文件开头,准备写入
  20. file.seek(0)
  21. # 写入更新后的内容
  22. file.write(content)
  23. # 截断文件,删除旧内容(如果更新后的内容比原内容短)
  24. file.truncate()
  25. # 文件现在已经被关闭,并且更改被保存
  26. if __name__ == '__main__':
  27. modification(header_file_path)
  28. print('头文件已修改!\r\n')
  29. modification(source_file_path)
  30. print('源文件已修改!\r\n')
  31. print('请输入退出:')