[转]winform利用读取xml获取webconfig
本文转自:https://www.cnblogs.com/0banana0/archive/2012/02/02/2335727.html
一、利用读取xml获取web.config中的数据库连接
参考:传送门

#region 利用读取xml获取webconfig
private static String GetXML()
{
//待修改
String f = System.Windows.Forms.Application.StartupPath;
f = f.Replace("调试", "CommonMethod\\Web.config");//对路径进行处理
XmlDocument doc = new XmlDocument();
doc.Load(f);
XmlNodeList add = doc.SelectNodes("//appSettings/add");
String DBString = "";
foreach (XmlNode node in add)
{
if (node.Attributes["key"].Value.Equals("strConn"))
{
DBString = node.Attributes["value"].Value;
break;
} }
return DBString;
}

二、获取webconfig的路径

System.IO.Directory.GetCurrentDirectory()
这个方法,会随着你的当前系统路径的改变而改变.比如你打开一个openFileDialog那么,再次获得路径就不对了。
string m_PathStr = Application.ExecutablePath;
是能获得全部,包括exe文件名的一串东西比如c:\abc\abc.exe
Application.StartupPath
能够获得当前的运行路径,不包括执行文件名
比如c:\abc\(又没有那个“\|”不记得了)
自己分析你要那个吧

参考:传送门
三、利用xml读写web.config

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using System.Xml;
using System.IO;
using System.Drawing.Imaging;
using System.Data.SqlClient;
using System.Windows.Forms.Integration; namespace WindowsFormsApplication1
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
} String filePath = "";
private void openFile_Click(object sender, EventArgs e)
{
DataTable dataTable1 = new DataTable();
System.Data.DataRow dr;
dataTable1.Columns.Add(new System.Data.DataColumn("key", typeof(System.String)));
dataTable1.Columns.Add(new System.Data.DataColumn("value", typeof(System.String)));
if (openFileDialog1.ShowDialog() == System.Windows.Forms.DialogResult.OK)
{
filePath = openFileDialog1.FileName;
if (!filePath.ToLower().EndsWith("web.config"))
{
MessageBox.Show("不是web.config");
return;
}
XmlDocument doc = new XmlDocument();
doc.Load(filePath);
XmlNodeList add = doc.SelectNodes("//appSettings/add");
foreach (XmlNode node in add)
{
dr = dataTable1.NewRow();
dr[0] = node.Attributes["key"].Value;
dr[1] = node.Attributes["value"].Value;
dataTable1.Rows.Add(dr);
}
this.dataGridView1.DataSource = dataTable1;
}
} private void saveButton_Click(object sender, EventArgs e)
{
XmlDocument doc = new XmlDocument();
doc.Load(filePath);
XmlNode appSettings = doc.SelectSingleNode("//appSettings");
appSettings.RemoveAll();
XmlNodeList add = doc.SelectNodes("//appSettings/add");
for (int i = 0; i < dataGridView1.Rows.Count; i++)
{
if (dataGridView1.Rows[i].Cells[1].Value != null && dataGridView1.Rows[i].Cells[0].Value != null)
{
String key = dataGridView1.Rows[i].Cells[0].Value.ToString();
String value = dataGridView1.Rows[i].Cells[1].Value.ToString();
if (key.Equals("") || value.Equals("")) return; XmlNode newNode = doc.CreateElement("add");
XmlAttribute attKey = doc.CreateAttribute("key");
attKey.Value = key;
newNode.Attributes.Append(attKey);
XmlAttribute attVaue = doc.CreateAttribute("value");
attVaue.Value = value;
newNode.Attributes.Append(attVaue);
appSettings.AppendChild(newNode); }
doc.Save(filePath);
}
} }
}

[转]winform利用读取xml获取webconfig的更多相关文章
- JAVA读取XML文件并解析获取元素、属性值、子元素信息
JAVA读取XML文件并解析获取元素.属性值.子元素信息 关键字 XML读取 InputStream DocumentBuilderFactory Element Node 前言 最 ...
- 浅谈JS中的!=、== 、!==、===的用法和区别 JS中Null与Undefined的区别 读取XML文件 获取路径的方式 C#中Cookie,Session,Application的用法与区别? c#反射 抽象工厂
浅谈JS中的!=.== .!==.===的用法和区别 var num = 1; var str = '1'; var test = 1; test == num //tr ...
- Winform中实现读取xml配置文件并动态配置ZedGraph的RadioGroup的选项
场景 Winform中对ZedGraph的RadioGroup进行数据源绑定,即通过代码添加选项: https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/ ...
- Winform中自定义xml配置文件后对节点进行读取与写入
场景 Winform中自定义xml配置文件,并配置获取文件路径: https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/100522648 ...
- 【XML】利用Dom4j读取XML文档以及写入XML文档
Dom4j简介 dom4j是一个Java的XML API,是jdom的升级品,用来读写XML文件的.dom4j是一个十分优秀的JavaXML API,具有性能优异.功能强大和极其易使用的特点,它的性能 ...
- Java获取路径方法&相对路径读取xml文件方法
(1).request.getRealPath("/");//不推荐使用获取工程的根路径 (2).request.getRealPath(request.getRequestURI ...
- 利用dom4j读取xml文件
对于xml文件的读取,其实有很多方法,例如:SAX实现方法,DOM4J实现方法 ,DOM 实现方法,JDOM实现方法 等等. 下面,我就说下dom4j的读取方法: 1.首先,肯定要引入第三方jar包. ...
- PHP中利用DOM和simplxml读取xml文档
实例 用DOM获取下列xml文档中所有金庸小说的书名,该xml文档所在位置为 ./books.xml: <?xml version="1.0" encoding=" ...
- 利用SAX解析读取XML文件
xml 这是我的第一个BLOG,今天在看<J2EE应用开发详解>一书,书中讲到XML编程,于是就按照书中的步骤自己测试了起来,可是怎么测试都不成功,后来自己查看了一遍源码,发现在读 ...
随机推荐
- 在Delphi中处理word文档与数据库的互联 1
在Delphi中处理word文档与数据库的互联 ---- 目前,Delphi被越来越多的人选中作为MIS系统开发中的前台工具.在以Delphi为前台,一些大型数据库为后台的MIS系统中,图形的处理不可 ...
- ubuntu 安装CUDA 8.0
安装CUDA 8.0 1) 在终端运行指令 sudo sh cuda_8.0.44_linux.run --no-opengl-libs 不加这个选项会进入循环登陆 2) 之后是一些提示信息,输入ac ...
- WinForm中实现Loading加载界面
1,LoaderForm窗体中添加PictureBox,然后添加Loading图片 2,窗体内属性设置 StartPosition :CenterScreen在屏幕中心显示 TopMost:True置 ...
- Linux环境GitLab安装与配置
1.背景 近期公司源代码管理工具从svn转向git,因此要在服务器上部署gitlab,总共部署了两台服务器,一台是Ubuntu server 17.04,一台是Centos7.在部署的过程中遇到不少问 ...
- 【重要通知】本人所有技术文章转移至https://zzqcn.github.io
本人所有技术文章转移至 https://zzqcn.github.io
- [转载]windows下安装Python虚拟环境virtualenv,virtualenvwrapper-win
1 前言 由于Python的版本众多,还有Python2和Python3的争论,因此有些软件包或第三方库就容易出现版本不兼容的问题. 通过 virtualenv 这个工具,就可以构建一系列 虚拟的Py ...
- Unity MVC 个人想法
Unity MVC 个人想法 Model 想要实现效果 保存服务器数据 没有业务逻辑 接受发送消息 代码实现 缓存服务器发来的数据 注册消息接口 提供消息发送接口 View 想要实现效果 实现单元测试 ...
- [0day]微软VS全版本DLL却持漏洞(VS2015 VS2013 VS2012 VS2010 VS2008)
<无敌破坏王>大师兄说的 "我不是针对谁,而是在座的各位,都是垃圾"前几天在国外论坛看到一个VS2010 DLL却持漏洞 测试发现是全版本 实际上2014年在某越南黑客 ...
- awk将某个字段按照分隔符分割之后统计次数
cat label_movie2|grep BBD252CC0A4FE7D10C990261D5CEACB5|awk -F "," '{for(i=2;i<NF;i++) p ...
- ElasticSearch入门2: 基本用法
基本用法: 一.索引创建 (启动集群和索引请看上一篇文章:http://www.cnblogs.com/liuxiaoming123/p/8081883.html) 1.打开浏览器,输入请求:htt ...