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