结构体数组ArrayList的使用
在此次实验的时候,为了保存treeview的节点和对应的文件的路径,我选择了使用结构体来保存它们之间的对应关系,选择使用ArralyList来保存结构体。
具体做法是:
1、定义结构体和ArrayList 对象。
public struct MyStruct { public string node; public string filepath; } public ArrayList Global_map = new ArrayList();
2、向结构体内保存数据
//将node -- filepath 对应关系存储起来 MyStruct var = new MyStruct(); var.filepath = filepath; var.node = node.Index.ToString(); Global_map.Add(var);
3、最后,获取当前选中的节点的index,然后比较,得到对应的文件名称,整个过程类似一个temp交换。
//获取当前node对应的sheet所在的文件的绝对路径 string node_index = treeView1.SelectedNode.Parent.Index.ToString(); //在全局的ArrayList中查找这个元素,从而找到对应的文件名 string filepath = ""; for (int i = 0; i < Global_map.Count;i++ ) { MyStruct struct_temp = (MyStruct)Global_map[i]; if (struct_temp.node==node_index) { filepath = struct_temp.filepath; } }