直接上代码
import os
import xml.etree.ElementTree as ET
def remove_decimal_and_save(xml_file_path):
tree = ET.parse(xml_file_path)
root = tree.getroot()
# 遍历XML中的所有元素
for elem in root.iter():
# 检查元素是否有文本并且是否为浮点数
if elem.text is not None and '.' in elem.text:
try:
# 将文本转换为浮点数,四舍五入,然后转换回整数
elem.text = str(int(round(float(elem.text))))
except ValueError:
pass # 忽略转换失败的情况
# 保存修改后的XML文件
tree.write(xml_file_path, encoding='utf-8', xml_declaration=True)
def batch_process_folder(folder_path):
# 获取文件夹中所有的XML文件
xml_files = [f for f in os.listdir(folder_path) if f.endswith('.xml')]
# 遍历每个XML文件并执行修改
for xml_file in xml_files:
xml_file_path = os.path.join(folder_path, xml_file)
remove_decimal_and_save(xml_file_path)
# 将'your_folder_path'替换为实际的文件夹路径
batch_process_folder('your_folder_path')