比如我想在一个应用程序中提供一个类似“工具”-“选项”这样的界面来让用户设置一个路径,这个路径设置了以后要为该用户保存起来,以后用户每次进行一些操作的时候,就以该路径为默认路径来进行操作。我的问题是,这个路径假设为一个字符串变量 sting path; 那么这个变量应该保存在哪里才能够让用户每次结束程序都不会丢失呢?不要说存数据库啊,那也太麻烦了……希望给出实现的代码,谢谢。

解决方案 »

  1.   

    一般存文件里,不知楼主的行不?
    配置文件,xml都可以啊...
      

  2.   

    保存:
     Application.UserAppDataRegistry.SetValue("path", path);读取:
    try
    {
     path=Application.UserAppDataRegistry.GetValue("path").ToString();
    }
    catch(...)
    {
    //设置缺省路径,或请求用户配置
    }
      

  3.   

    保存数据到 xml,config,INI,数据库中都可以
    Configuration config = ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.None);
      config.AppSettings.Settings.Remove(key);
      config.AppSettings.Settings.Add(key, value);
      config.Save(ConfigurationSaveMode.Modified);
      ConfigurationManager.RefreshSection("appSettings");   string configFileName = Application.ExecutablePath + ".config";  
    System.Xml.XmlDocument doc = new System.Xml.XmlDocument();  
    doc.Load(configFileName);  
    string configString = @"";  
    System.Xml.XmlNode configNode = doc.SelectSingleNode(configString);  
    if (configNode != null)  
    {  
      configNode.InnerText = "";  
      doc.Save(configFileName);  
      Properties.Settings.Default.Reload();   
    }  
      

  4.   

    思路楼上都讲了,给你点写简单xml的代码吧。我这个是对每个xml节点创建一个图像文件字符串。
    你可以根据自己需要来改进
    string path = "D:\\test.xml";
    XmlTextWriter textWriter = new XmlTextWriter(path, System.Text.Encoding.UTF8);
    //自动缩进
    textWriter.Formatting = Formatting.Indented;
    // 开始写过程,调用WriteStartDocument方法
    textWriter.WriteStartDocument();
    // 写入注释
    textWriter.WriteComment("注释");
    //写根节点
    textWriter.WriteStartElement("X");//创建节点A
    textWriter.WriteStartElement("A");
    //A的元素
    textWriter.WriteElementString("A1", "7.jpg");
    textWriter.WriteElementString("A2", "7.jpg");
    textWriter.WriteElementString("A3", "Art Flashallery");
    //A节点结束
    textWriter.WriteEndElement();//创建节点B
    textWriter.WriteStartElement("B");
    //A的元素
    textWriter.WriteElementString("B1", "7.jpg");
    textWriter.WriteElementString("B2", "7.jpg");
    textWriter.WriteElementString("B3", "Art Flashallery");
    //A节点结束
    textWriter.WriteEndElement();
    //根节点结束
    textWriter.WriteEndElement();
    //写文档结束,调用WriteEndDocument方法
    textWriter.WriteEndDocument();
    //关闭textWriter
    textWriter.Close(); 
      

  5.   

    .net对配置文件提供了很好的支持,你可以在项目中创建一个App.config文件,然后用.net提供的类去读取和写入配置信息:
    参考资料:
    ConfigurationManager 类