You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何使用C#修改《模拟农场22》存档XML文件的节点值

C# 修改《模拟农场22》存档XML指定节点值的方案

直接使用System.Xml.Linq命名空间下的XDocument类即可实现不重建XML文件、仅修改指定节点值的需求,步骤如下:

1. 引用必要的命名空间

在代码文件顶部添加:

using System.Xml.Linq;

2. 加载目标XML文件

指定存档文件路径,加载现有XML文档:

string saveFilePath = @"C:\Users\Name\Documents\My Games\FarmingSimulator2022\savegame1\careerSavegame.xml";
XDocument doc = XDocument.Load(saveFilePath);

3. 定位并修改指定节点值

以修改<savegameName>和<resetVehicles>节点为例:

// 修改savegameName节点的值
var savegameNameNode = doc.Descendants("savegameName").FirstOrDefault();
if (savegameNameNode != null)
{
    savegameNameNode.Value = "My Modified Save";
}

// 修改resetVehicles节点的值(布尔类型)
var resetVehiclesNode = doc.Descendants("resetVehicles").FirstOrDefault();
if (resetVehiclesNode != null)
{
    resetVehiclesNode.Value = "true";
}

注意:如果节点存在多层嵌套(比如<settings>下的节点),也可以用doc.Root.Element("settings").Element("节点名")来精准定位,避免同名称节点冲突。

4. 保存修改后的XML文件

将修改后的文档写回原文件:

doc.Save(saveFilePath);

额外注意事项

  • 操作前建议备份存档文件,避免修改错误导致存档损坏。
  • 如果XML文件编码为utf-8,XDocument.Save()会默认保留原编码格式,无需额外设置。
  • 若需要修改属性值(比如<careerSavegame>的revision属性),可以用doc.Root.Attribute("revision").Value = "3"这种方式。

内容的提问来源于stack exchange,提问作者ShaunDev

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.16 20:45:32