Hi ich habe einen Algo geschrieben der eine XML Datei ausliest, und diese dann in das Format XSD bringt.
schaut einfach mal drüber..problem ist je mehr Tags es sind desdo länger dauert es richtig lange...
Achso der Algo verhindert "dopplung"
Also zum Beispiel.
<person>
<name>X</name>
<name>Y</name>
</person>
Es darf nur ein mal name vorkommen. Die Datensätze interessieren dabei nicht.
schaut einfach mal drüber..problem ist je mehr Tags es sind desdo länger dauert es richtig lange...
Achso der Algo verhindert "dopplung"
Also zum Beispiel.
<person>
<name>X</name>
<name>Y</name>
</person>
Es darf nur ein mal name vorkommen. Die Datensätze interessieren dabei nicht.
Code:
if(currentNode==null){
xsdschema.add(new XSD(newNode,nr,0));
}
else{
int anz=xsdschema.size();
for(int x=0;x<anz;++x){
if(newNode.equals(xsdschema.get(x).dmtn))set=false;
}
if(set)
for(int i=0;i<anz;++i){
if(currentNode.equals(xsdschema.get(i).dmtn)){
for(int j=i;j<anz;++j){
if(newNode.toString().equals(xsdschema.get(j).dmtn.toString())&&xsdschema.get(j).vaterele==i){
set=false;
}
}
if(set){
nr++;
xsdschema.add(new XSD(newNode,nr,i));
}
break;
}
}
}
import javax.swing.tree.DefaultMutableTreeNode;
public class XSD{
public DefaultMutableTreeNode dmtn;
public int elenr;
public int vaterele;
public XSD(DefaultMutableTreeNode dmtn, int elenr, int vaterele) {
this.dmtn=dmtn;
this.elenr = elenr;
this.vaterele = vaterele;
}
}