XML操作

string filename = System.Windows.Forms.Application.ExecutablePath + ".config";
                XmlDocument doc = new XmlDocument();
                doc.Load(filename);

                XmlElement element = doc.SelectSingleNode("//appSettings/add[@key='Lang']") as XmlElement;
                if (element == null)
                {
                    var appElement = doc.SelectSingleNode("//appSettings");
                    if (appElement == null)
                    {
                        appElement = doc.CreateElement("appSettings");
                        doc.SelectSingleNode("/configuration").AppendChild(appElement);
                    }

                    element = doc.CreateElement("add");
                    var key = doc.CreateAttribute("key");
                    key.Value = "Lang";

                    var value = doc.CreateAttribute("value");
                    element.AppendChild(key);
                    element.AppendChild(value);
                    appElement.AppendChild(element);
                }
                element.GetAttributeNode("value").Value = CurrentLang.CultureInfo.Name;
                doc.Save(filename);
 var configDir = new DirectoryInfo("./Config/Language/ServiceUri");
            FileInfo[] configFiles = configDir.Exists ? configDir.GetFiles() : new FileInfo[0];

            FileInfo item = null;

            if (languageName == "中文")
            {
                item = configFiles.FirstOrDefault(f => System.IO.Path.GetFileNameWithoutExtension(f.Name) == "serviceuri_zh");
            }
            else
            {
                item = configFiles.FirstOrDefault(f => System.IO.Path.GetFileNameWithoutExtension(f.Name) == "serviceuri_us");
            }

            if (item != null)
            {
                var fileName = System.IO.Path.GetFileName(Process.GetCurrentProcess().MainModule.FileName + ".config");
                File.Copy(item.FullName, fileName, true);
                ConfigurationManager.RefreshSection("system.serviceModel");
                ConfigurationManager.RefreshSection("appSettings");
            }
原文地址:https://www.cnblogs.com/wywnet/p/4790706.html