`要求是必须用文件的修订版填充树。
我有一个命令可以从 MKS(版本控制系统)获取特定文件的所有修订。
在java中使用以下命令
Process p = Runtime.getRuntime().exec("cmd /C "+cmd);
我得到了 file.c 的所有版本。现在我想将数据填充到树结构中。我怎么做?
try {
List<String> lVersions = new ArrayList<String>();
Process p = Runtime.getRuntime().exec("cmd /C "+cmd);
BufferedReader in = new BufferedReader( new InputStreamReader(p.getInputStream()));
String line = null;
while ((line = in.readLine()) != null)
{
lVersions .add(line);
}
}catch (IOException e)
{ e.printStackTrace();
}
lVersion 包含以下输出。它显示特定文件的所有修订。我需要将此信息填充到树结构中。
1.1
1.1.1.1
1.1.1.2
1.1.1.3
1.1.1.4
1.2
1.3
我创建了一个树类
公共类树{
private List<Tree> children = new ArrayList<Tree>();
private String label;
private Tree parent;
private String root;
public Tree() {
super();
children = new ArrayList<Tree>();
}
public Tree(String label) {
this();
setData(label);
}
public void setRoot(String root){
this.root= root;
}
public String getRoot(){
return root;
}
public void addChild(Tree child) {
child.setParent(this);
children.add(child);
}
public void removeChild(Tree node) {
children.remove(node);
node.setParent(null);
}
public void setParent(Tree parent) {
this.parent = parent;
}
public Object[] getChildren() {
return children.toArray();
}
public Object getParent() {
return parent;
}
public String getLabel() {
return this.label;
}
public void setData(String label) {
this.label = label;
}
}
我必须生成以下树结构并记住每个节点的父节点。我不是要代码,但一些关于如何开始和继续的指示会非常有帮助!!!!
1.1
1.2 1.1.1.1
1.3 1.1.1.2
1.4 1.1.1.3
1.1.1.4