StringBuilder 学习笔录

当我们要处理动态的字符串时候,使用String显然力不从心。

StringBuilder也称 字符串数组,动态的改变内容.

下面的代码是将128到xfff对应Unicode编码的字输出显示 

StringBuilder s = new StringBuilder(0xffff * 3);
            for (int i = 128; i < 0xffff; i++)
            {
                if (i % 50 == 0)
                    s.Append("\r\n");
                s.AppendFormat("{0,3}", (char)i);
            }
            textBox1.Text = s.ToString();
        }

下面是关于服务器信息配置文件,也用到了StringBuilder,代码如下:

 

public static bool SaveConfigServer(string ipadd, string port)
        {   //保存服务器名和端口

            try
            {
                StringBuilder str = new StringBuilder();
                string ConfigFileUrl = "config/ipConfig.dat";
                str.Append("<?xml version=\"1.0\" encoding=\"UTF-8\"?><root><server>");
                str.Append("<ip>" + ipadd + "</ip>");
                str.Append("<port>" + port + "</port>");
                str.Append("</server></root>");
                StreamWriter save = new StreamWriter(ConfigFileUrl);
                save.Write(str.ToString());
                save.Close();
                return (true);
            }
            catch
            {
                return (false);
            }

}

连接数据库字段的config方法:

 public static bool SaveConfigDate(string ip, string database, string uid, string pwd)
        {  //保存数据库连接地址
            try
            {
                StringBuilder str = new StringBuilder();
                string FileUrl = "config/dataConfig.dat";
                str.Append("<?xml version=\"1.0\" encoding=\"UTF-8\"?><root><server>");
                str.Append("<ip>" + ip + "</ip>");
                str.Append("<database>" + database + "</database>");
                str.Append("<uid>" + uid + "</uid>");
                str.Append("<pwd>" + pwd + "</pwd>");
                str.Append("</server></root>");
                StreamWriter save = new StreamWriter(FileUrl);
                save.Write(str.ToString());
                save.Close();
                return (true);
            }
            catch
            {
                return (false);
            }
        }

读取config里的节点:

public static string GetValueByNode(string XmlFile, string NodePath)
        {  //读取结点内容
            if (File.Exists(XmlFile))
            {
                XmlDocument SerInf = new XmlDocument();
                SerInf.Load(XmlFile);
                XmlNode FirstNode = SerInf.SelectSingleNode(NodePath).FirstChild;
                return (FirstNode.InnerText);
            }
            else
            {
                return ("-1");
            }
        }

注:

 

StringBuilder.Append:在此实例的结尾追加指定对象的字符串表示形式。

StreamWriter.Write:写入流

File.Exists:确定指定的文件是否存在

XmlDocument:xml文档

XmlDocument.Load :加载指定的 XML 数据。

SelectSingleNode(XPath):选择匹配 XPath 表达式的第一个 XmlNode

XmlNode:表示 XML 文档中的单个节点

XmlNode.FirstChild :获取节点的第一个子级。

XmlNode.InnerText:获取或设置节点及其所有子节点的串联值。

 

posted @ 2009-03-20 21:22  会游泳dě鱼  阅读(402)  评论(0编辑  收藏  举报