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