import csv # 尝试使用ANSI编码打开文件 try: with open('手机地区表.txt', 'r', encoding='ansi') as infile: lines = infile.readlines() except UnicodeDecodeError: # 如果ANSI失败,尝试使用gbk编码 with open('手机地区表.txt', 'r', encoding='gbk') as infile: lines = infile.readlines() # 创建CSV输出文件 with open('手机地区表.csv', 'w', encoding='utf-8', newline='') as outfile: writer = csv.writer(outfile) # 处理每一行数据 for line in lines: line = line.strip() if not line: continue # 使用|分隔符拆分字段 parts = line.split('|') # 检查是否为标题行 if parts[0] == "手机前缀" or len(parts) < 3: writer.writerow(parts) # 标题行保持不变 continue # 从地区信息中提取省份 location = parts[2] # 处理特殊省份名称 if location.startswith(("内蒙古", "黑龙江")): province = location[:3] else: province = location[:2] # 更新地区字段为省份名称 parts[2] = province # 将修改后的行写入CSV writer.writerow(parts) print("转换完成,已生成:手机地区表.csv")