从c#给一个文件夹路径给python,然后python对文件夹内的xml文件中的某个字符串进行替换!

从c#给一个文件夹路径给python,然后python对文件夹内的xml文件中的某个字符串进行替换!
python版本2.7

可以使用Python的os和xml.etree.ElementTree模块来实现这个功能。

首先,从C#传递文件夹路径给Python,可以使用sys.argv参数来获取命令行参数。假设C#传递的文件夹路径为folder_path,则可以在Python中使用以下代码获取:

import sys

folder_path = sys.argv[1]

接下来,可以使用os模块遍历文件夹内的xml文件,并使用xml.etree.ElementTree模块解析xml文件。假设需要替换的字符串为old_str,替换成的字符串为new_str,则可以使用以下代码:

import os
import xml.etree.ElementTree as ET

old_str = "..."
new_str = "..."

for filename in os.listdir(folder_path):
    if filename.endswith(".xml"):
        xml_path = os.path.join(folder_path, filename)
        tree = ET.parse(xml_path)
        root = tree.getroot()
        for elem in root.iter():
            if elem.text and old_str in elem.text:
                elem.text = elem.text.replace(old_str, new_str)
        tree.write(xml_path)

以上代码会遍历文件夹内所有以.xml结尾的文件,对每个文件进行解析,并在xml文件中查找包含old_str的字符串,将其替换成new_str,并将修改后的xml文件保存。