C# 在vs2008里 treeview 保存 和读取 txt或者xml 过程的全代码 还有就是前进 后退 功能

问题描述

求把treeview保存到txt文本文档之中之后下次运行程序会自动加载txt文本中的节点的代码最好是一粘贴就能用的!!还有就是用c#实现前进和后退功能也求代码谢谢大家了

解决方案

解决方案二:
该回复于2011-12-19 13:58:25被版主删除
解决方案三:
思路别人能给,叫别人给你敲代码貌似很少、
解决方案四:
//我例举一个文本框值保存到记事本中然后下次运行程序自动加载进来值if(File.Exists("../../test.txt"))//保存到记事本中{if(!this.txtZhangHao.AutoCompleteCustomSource.Contains(txtZhangHao.Text))//判断记录是否存在{StreamWritersw=newStreamWriter("../../test.txt",false);//true参数不可少,否则会覆盖以前存入的记录sw.WriteLine(this.txtZhangHao.Text.Trim());//存入记录sw.Close();if(!this.txtZhangHao.AutoCompleteCustomSource.Contains(this.txtZhangHao.Text)){this.txtZhangHao.AutoCompleteCustomSource.Add(this.txtZhangHao.Text);}}this.DialogResult=DialogResult.OK;}//加载load事件中if(File.Exists(@"../../test.txt"))//读取{StreamReadersr=newStreamReader(@"../../test.txt",true);stringstr=sr.ReadLine();if(str!=null){txtZhangHao.Text=str.Trim();}sr.Close();}//txtZhangHao为文本框name可以任意命名

解决方案五:
如果是winform实现前进后退的话可以用WebBrowserwinform里面有一个WebBrowser控件,具有IE的功能WebBrowser.Url//指定将要显示的UrlWebBrowser.GoBack()//后退WebBrowser.GoForward()//前进WebBrowser.GoHome()//访问当前用户主页WebBrowser.Navigate(URL)//跳转到指定的URL
解决方案六:
privatevoidpopulateTreeview(){OpenFileDialogdlg=newOpenFileDialog();dlg.Title="OpenXMLDocument";dlg.Filter="XMLFiles(*.xml)|*.xml";dlg.FileName=Application.StartupPath+"\..\..\example.xml";if(dlg.ShowDialog()==DialogResult.OK){try{//Justagoodpractice--changethecursortoa//waitcursorwhilethenodespopulatethis.Cursor=Cursors.WaitCursor;//First,we'llloadtheXmldocumentXmlDocumentxDoc=newXmlDocument();xDoc.Load(dlg.FileName);//Now,clearoutthetreeview,//andaddthefirst(root)nodetreeView1.Nodes.Clear();treeView1.Nodes.Add(newTreeNode(xDoc.DocumentElement.Name));TreeNodetNode=newTreeNode();tNode=(TreeNode)treeView1.Nodes[0];//WemakeacalltoaddTreeNode,//wherewe'lladdallofournodesaddTreeNode(xDoc.DocumentElement,tNode);//ExpandthetreeviewtoshowallnodestreeView1.ExpandAll();}catch(XmlExceptionxExc)//ExceptionisthrownisthereisanerrorintheXml{MessageBox.Show(xExc.Message);}catch(Exceptionex)//Generalexception{MessageBox.Show(ex.Message);}finally{this.Cursor=Cursors.Default;//Changethecursorback}}}//ThisfunctioniscalledrecursivelyuntilallnodesareloadedprivatevoidaddTreeNode(XmlNodexmlNode,TreeNodetreeNode){XmlNodexNode;TreeNodetNode;XmlNodeListxNodeList;if(xmlNode.HasChildNodes)//Thecurrentnodehaschildren{xNodeList=xmlNode.ChildNodes;for(intx=0;x<=xNodeList.Count-1;x++)//Loopthroughthechildnodes{xNode=xmlNode.ChildNodes[x];treeNode.Nodes.Add(newTreeNode(xNode.Name));tNode=treeNode.Nodes[x];addTreeNode(xNode,tNode);}}else//Nochildren,soaddtheouterxml(trimmingoffwhitespace)treeNode.Text=xmlNode.OuterXml.Trim();}saveprivateStreamWritersr;publicvoidexportToXml(TreeViewtv,stringfilename){sr=newStreamWriter(filename,false,System.Text.Encoding.UTF8);//Writetheheadersr.WriteLine("<?xmlversion="1.0"encoding="utf-8"?>");//Writeourrootnodesr.WriteLine("<"+treeView1.Nodes[0].Text+">");foreach(TreeNodenodeintv.Nodes){saveNode(node.Nodes);}//Closetherootnodesr.WriteLine("</"+treeView1.Nodes[0].Text+">");sr.Close();}privatevoidsaveNode(TreeNodeCollectiontnc){foreach(TreeNodenodeintnc){//Ifwehavechildnodes,we'llwrite//aparentnode,theniterratethrough//thechildrenif(node.Nodes.Count>0){sr.WriteLine("<"+node.Text+">");saveNode(node.Nodes);sr.WriteLine("</"+node.Text+">");}else//Nochildnodes,sowejustwritethetextsr.WriteLine(node.Text);}}

时间: 2025-01-30 01:34:31

C# 在vs2008里 treeview 保存 和读取 txt或者xml 过程的全代码 还有就是前进 后退 功能的相关文章

用PHP读取和编写XML DOM的实现代码

用 PHP 读取和编写可扩展标记语言(XML)看起来可能有点恐怖.实际上,XML 和它的所有相关技术可能是恐怖的,但是用 PHP 读取和编写 XML 不一定是项恐怖的任务.首先,需要学习一点关于 XML 的知识 -- 它是什么,用它做什么.然后,需要学习如何用 PHP 读取和编写 XML,而有许多种方式可以做这件事. 本文提供了 XML 的简短入门,然后解释如何用 PHP 读取和编写 XML. 什么是 XML? XML 是一种数据存储格式.它没有定义保存什么数据,也没有定义数据的格式.XML 只

c语言:如何把一个整数按位保存在一个字符数组里,然后再读取出来还原为一个整数

问题描述 c语言:如何把一个整数按位保存在一个字符数组里,然后再读取出来还原为一个整数 void WitedataToFlash(void) { unsigned char i; sprintf(datal, "%luunsignedlong", gdvolt); for(i=0;i<11;i++) EEPROM_write(0x01+i,datal[i]); } /*********************************************************

c++读取txt文件里的数据,然后保存在二维数组中进行处理

问题描述 c++读取txt文件里的数据,然后保存在二维数组中进行处理 我写的程序是把数据自己输入在主函数里,但是如果想实际的应用应该是有一个数据文件,然后提取出数据文件的数据保存在二维数组中才对,而且这个二维数组要根据具体文件的大小定数组的行列数,有谁能帮我做一下吗,谢谢! #include #include #include using namespace std; #define M 10//二维数组的行 #define N 6//二维数组的列 class Data { double a[M

【万里征程——Windows App开发】如何保存、读取、删除应用数据

在前面的几篇博客中,都是关于数据的,这方面的内容其实还有很多很多,省略掉一部分后,也还是有很多.这一篇将是很重要的一部分,关于保存和读取数据,对于游戏而言,这一点尤其重要. 先来看看一个大概的背景吧,我这里写的很简单啦^_^ 保存的内容就是这四个框框里填写的数据咯.先上XAML代码. <Grid Background="{ThemeResource ApplicationPageBackgroundThemeBrush}"> <StackPanel Orientati

mscomm-MFC 程序,传感器里的数据无法读取到文本框里

问题描述 MFC 程序,传感器里的数据无法读取到文本框里 写了一个MFC程序,想把传感器的数据通过MSComm 读取出来.现在的问题是程序不出错,但是数据显示不出来.代码如下: void CEmapDlg::OnCommMscomm1() { // TODO: 在此处添加消息处理程序代码 //printf("system is running here"); static unsigned int cnt = 0; VARIANT variant_inp; COleSafeArray

Apache Spark源码走读(十)ShuffleMapTask计算结果的保存与读取 &amp;WEB UI和Metrics初始化及数据更新过程分析

<一>ShuffleMapTask计算结果的保存与读取 概要 ShuffleMapTask的计算结果保存在哪,随后Stage中的task又是如何知道从哪里去读取的呢,这个过程一直让我困惑不已. 用比较通俗一点的说法来解释一下Shuffle数据的写入和读取过程 每一个task负责处理一个特定的data partition task在初始化的时候就已经明确处理结果可能会产生多少个不同的data partition 利用partitioner函数,task将处理结果存入到不同的partition,这

java 如何保存、读取数据库字段为blob类型的值

问题描述 java 如何保存.读取数据库字段为blob类型的值 java 如何保存.读取javaBean中定义String类型,oracle数据库字段为blob类型的值 这是我的业务逻辑代码 try { String encoding = "GBK"; File file = new File("E:workspaceNeuSoft omcat7.0.40logslocalhost.2015-12-07.log"); if (file.isFile() &&

路径 配置文件-如何把项目中的路径等这种可变的信息提取到配置文件里,然后通过读取配置文件获取路径呢

问题描述 如何把项目中的路径等这种可变的信息提取到配置文件里,然后通过读取配置文件获取路径呢 解决方案 Java Web 项目中的配置文件路径Java Web 项目中的配置文件路径项目中配置文件路径 解决方案二: 写到xml文件里,随便你记在哪,只要你能读取到就行了 解决方案三: 随便写在什么位置,然后写一个读取文件的方法就好 解决方案四: 写个xml,之后放到你到项目环境中,需要就读就可以了

vs mfc 保存数据到txt-vs2005,mfc下,想把编辑框里的数据保存到txt文件里,怎么实现啊

问题描述 vs2005,mfc下,想把编辑框里的数据保存到txt文件里,怎么实现啊 vs2005,mfc下,想把编辑框里的数据保存到txt文件里,怎么实现啊 解决方案 响应事件 比如你定义一个按钮,当点击这个按钮保存文件 你对这个按钮绑定点击事件函数 在函数里面取得编辑框的内容,然后写入到一个文件里面! 解决方案二: 用GetWindowText来获得编辑框中的内容,用FILE结构体来读写文件就可以 解决方案三: 想要自动保存的话,就加一个判断编辑框内容是否改变的消息处理,如果改变了,那么再写入