Results 1 to 9 of 9
Thread: zip to JTree
- 09-01-2009, 02:47 PM #1
Member
- Join Date
- Apr 2009
- Posts
- 17
- Rep Power
- 0
- 09-01-2009, 02:54 PM #2
Senior Member
- Join Date
- Aug 2009
- Posts
- 2,388
- Rep Power
- 6
You mean represent the contents as a JTree rather than converting the zip file to a JTree, right?
Start by reading the JTree tutorial.
- 09-01-2009, 03:03 PM #3
Member
- Join Date
- Apr 2009
- Posts
- 17
- Rep Power
- 0
Thank you.
But my problem is how to extract data from a zip file in a format that I can build a JTree or DefaultMutableTreeNode.
- 09-01-2009, 03:06 PM #4
Senior Member
- Join Date
- Aug 2009
- Posts
- 2,388
- Rep Power
- 6
You do know How to read Zip files, right?
- 09-01-2009, 03:20 PM #5
Member
- Join Date
- Apr 2009
- Posts
- 17
- Rep Power
- 0
Yes.
But I can not find solution for my problem.
The builders of a JTree are:
JTree(TreeNode)
JTree(TreeNode, boolean)
JTree(TreeModel)
JTree()
JTree(Hashtable)
JTree(Object[])
JTree(Vector)
But exploring a zip file I'm not able to create any of these structures.
- 09-01-2009, 03:26 PM #6
Senior Member
- Join Date
- Aug 2009
- Posts
- 2,388
- Rep Power
- 6
Read the whole of the JTree tutorial that I posted above.
- 09-01-2009, 04:19 PM #7
Member
- Join Date
- Apr 2009
- Posts
- 17
- Rep Power
- 0
Finally,
I found a possible solution:
public TreeNode generarArbre() {
ZipFile file = null;
try {
file = new ZipFile(ruta);
} catch (IOException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
System.exit(1);
}
MutableTreeNode arrel = new DefaultMutableTreeNode(nomFitxer);
Map<String,MutableTreeNode> nodes = new HashMap<String,MutableTreeNode>();
nodes.put(nomFitxer, arrel);
for (Enumeration<? extends ZipEntry> e = file.entries(); e.hasMoreElements();) {
ZipEntry entry = e.nextElement();
String name = entry.getName();
MutableTreeNode node = new DefaultMutableTreeNode(name);
nodes.put(name, node);
MutableTreeNode parent = getParent(name, nodes);
parent.insert(node, parent.getChildCount());
}
return arrel;
}
private MutableTreeNode getParent(String name, Map<String,MutableTreeNode> nodes) {
File f = new File(name);
String parent = f.getParent();
// parent == null => parentNode is the root
if (parent == null) {
System.out.println("Nodes:"+nodes.get(nomFitxer));
return nodes.get(nomFitxer);
} else {
parent = parent+File.separator;
}
MutableTreeNode parentNode = nodes.get(parent);
// omitted: null check and creation
return parentNode;
}
- 09-01-2009, 04:24 PM #8
Senior Member
- Join Date
- Aug 2009
- Posts
- 2,388
- Rep Power
- 6
Your code contains a smiley inside it!
Better use code tags when posting code tags next time.
So, does it work?
- 09-01-2009, 04:26 PM #9
Member
- Join Date
- Apr 2009
- Posts
- 17
- Rep Power
- 0
Similar Threads
-
JCheckbox in Jtree
By shajuantony in forum AWT / SwingReplies: 10Last Post: 09-09-2009, 10:42 AM -
Jtree with checkbox
By msankar.ravi in forum AWT / SwingReplies: 1Last Post: 07-09-2009, 11:25 PM -
Move JTree item to another JTree.
By Melki in forum AWT / SwingReplies: 8Last Post: 07-09-2009, 11:59 AM -
JTree Problem
By ngpamela in forum XMLReplies: 0Last Post: 12-10-2008, 04:10 PM -
A Simple JTree Example
By Java Tip in forum javax.swingReplies: 0Last Post: 06-27-2008, 07:41 PM


LinkBack URL
About LinkBacks
Reply With Quote

Bookmarks