自动获取根元素内容并生成 XML 文件 - 使用 Javascript 代码

本文提供 Javascript 代码,使用 xlsxxmlbuilder 库自动获取 XLSX 文件的根元素内容,并将数据转换为 XML 格式,保存为新的 XML 文件。

const fs = require('fs');
const XLSX = require('xlsx');
const xml = require('xmlbuilder');

// 读取 XLSX 文件
const workbook = XLSX.readFile('path/to/input.xlsx'); // 替换为实际的XLSX文件路径
const worksheet = workbook.Sheets[workbook.SheetNames[0]];
const jsonData = XLSX.utils.sheet_to_json(worksheet, { header: 1 });

// 获取根元素名称
const rootElementName = worksheet['A1'].v;

// 创建根元素
const root = xml.create(rootElementName);

// 获取属性行
const attributeRow = jsonData[0];

// 遍历每一行数据
jsonData.slice(1).forEach(row => {
  const element = root.ele(attributeRow[0]);
  attributeRow.slice(1).forEach((attribute, index) => {
    element.att(attribute, row[index + 1]);
  });
});

// 构建 XML 数据
const xmlData = root.end({ pretty: true });

// 保存为 XML 文件
fs.writeFile('path/to/output.xml', xmlData, 'utf8', err => {
  if (err) {
    console.error(err);
    return;
  }
  console.log('转换后的XML文件已保存');
});

代码说明

  1. 首先,需要安装 xlsxxmlbuilder 库:
npm install xlsx xmlbuilder
  1. 代码读取指定的 XLSX 文件,并使用 XLSX.utils.sheet_to_json 方法将第一个工作表转换为 JSON 格式数据。

  2. 从 XLSX 文件的第一个工作表中获取根元素名称,假设根元素名称位于 A1 单元格。

  3. 使用 xmlbuilder 创建根元素,并将根元素名称作为参数传递给 xml.create()

  4. 获取属性行,并遍历每一行数据。在每一行中,创建一个元素,并为元素设置属性。

  5. 使用 root.end() 构建 XML 数据,并使用 fs.writeFile 将转换后的 XML 数据保存为新的 XML 文件。

使用方法

  1. 将代码中的 path/to/input.xlsx 替换为实际的输入 XLSX 文件路径。

  2. 将代码中的 path/to/output.xml 替换为实际的输出 XML 文件路径。

  3. 运行代码,即可自动获取 XLSX 文件的根元素名称,并根据提供的格式将其转换为 XML 格式,并将转换后的 XML 数据保存到指定的输出文件路径中。

其他说明

  • 代码假设 XLSX 文件的第一个工作表包含数据,且第一行包含属性名称。
  • 代码假设根元素名称位于 A1 单元格。
  • 您可以根据需要修改代码,以满足不同的需求。
自动获取根元素内容并生成 XML 文件 - 使用 Javascript 代码

原文地址: https://www.cveoy.top/t/topic/IMu 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录