使用python脚本可批量将xml转换为txt,通过遍历文件夹提取文本内容并去除标签,结合elementtree解析,适合处理中文及复杂结构。

将XML文件转换为TXT文本格式,可以通过提取XML中的文本内容,去掉标签,保存为纯文本。批量处理时,推荐使用脚本自动化操作。以下是几种实用方法:
1. 使用Python脚本批量转换
Python处理XML非常方便,可以读取多个XML文件,提取内容并保存为TXT。
示例代码:功能说明:
遍历指定文件夹中的所有.xml文件,提取其中的文本内容(去除标签),保存为同名.txt文件。
代码示例:
import os
import xml.etree.ElementTree as ET
<p>def xml_to_txt(xml_file, txt_file):
try:
tree = ET.parse(xml_file)
root = tree.getroot()</p><pre class='brush:php;toolbar:false;'> # 提取所有文本内容
texts = []
for elem in root.iter():
if elem.text and elem.text.strip():
texts.append(elem.text.strip())
# 写入TXT文件
with open(txt_file, 'w', encoding='utf-8') as f:
f.write('\n'.join(texts))
print(f"已转换:{xml_file} -> {txt_file}")
except Exception as e:
print(f"转换失败 {xml_file}: {e}")def batch_convert_xml_to_txt(xml_folder, txt_folder): if not os.path.exists(txt_folder): os.makedirs(txt_folder)
for filename in os.listdir(xml_folder):
if filename.lower().endswith('.xml'):
xml_path = os.path.join(xml_folder, filename)
txt_name = os.path.splitext(filename)[0] + '.txt'
txt_path = os.path.join(txt_folder, txt_name)
xml_to_txt(xml_path, txt_path)使用方式
batch_convert_xml_to_txt('xml_files', 'txt_output')
2. 使用XSLT转换(适合结构化XML)
如果XML结构固定,可以用XSLT定义转换规则,提取特定字段。
本文档主要讲述的是Android数据格式解析对象JSON用法;JSON可以将Java对象转成json格式的字符串,可以将json字符串转换成Java。比XML更轻量级,Json使用起来比较轻便和简单。JSON数据格式,在Android中被广泛运用于客户端和服务器通信,在网络数据传输与解析时非常方便。希望本文档会给有需要的朋友带来帮助;感兴趣的朋友可以过来看看
- 编写一个XSL样式表,输出纯文本
- 配合命令行工具如xsltproc批量处理
xsltproc style.xsl input.xml > output.txt
3. 使用文本编辑器或工具软件
对于少量文件,可用支持正则替换的编辑器(如Notepad++):
- 打开XML文件
- 使用正则表达式 ]*> 替换为空,去除所有标签
- 另存为.txt文件
批量时可结合宏或插件实现自动化。
4. 命令行+Shell脚本(Linux/macOS)
使用grep、sed、xmlstarlet等工具提取内容。
示例:
for file in *.xml; do
xmlstarlet sel -t -v "//text()" "$file" > "${file%.xml}.txt"
done
基本上就这些常用方法。Python脚本最灵活,适合大多数场景,尤其是中文内容或复杂结构。只要把XML文件放在指定文件夹,运行一次脚本就能全部转完。关键是根据你的XML结构调整提取逻辑,比如是否保留换行、是否只提取某些节点等。









