Beefy Boxes and Bandwidth Generously Provided by pair Networks
Welcome to the Monastery
 
PerlMonks  

Re: Directory Tree Structure

by marto (Cardinal)
on Oct 21, 2005 at 09:47 UTC ( [id://501934]=note: print w/replies, xml ) Need Help??


in reply to Directory Tree Structure

Hi Rupesh,

Have a look at the File::Find module.
You can use it to traverse the directory, I think once you look at the documentation that you will be able to determine how to use it in conjunction with your JavaScript and Style sheet.

Hope this helps.

Martin

Replies are listed 'Best First'.
Re^2: Directory Tree Structure
by rupesh (Hermit) on Oct 21, 2005 at 10:10 UTC

    Thanks marto,
    I've had a look at the module and also File::Find::Recurse.
    The issue is, how do I structure the directories in the form of a tree?

    Here's what I need to identify:
    The main directory (done)
    All the subdirectories for the main directory (done)
    Each subdirectory's subdirectories (confusing, but doable)
    ..recuresively (uh..uh)
    and then, put it all in one data structure, wherein I can identify specific points where I can start and end the  <li> and the <ul>tags.

    Thanks,
    Rupesh.
      Hi rupesh,

      "Each subdirectory's subdirectories (confusing, but doable)
      ..recuresively (uh..uh)"

      Are you having difficulty doing this recursively?
      As a little example look at this code below:
      #!/usr/bin/perl use strict; use warnings; use File::Find; my $TargetPath = $ARGV[0]; find (\&ProcessTree,$TargetPath); sub ProcessTree { print "Directory: $File::Find::name\n" if -d; print "File: $File::Find::name\n" unless -d; }

      Call this script with the path you want to traverse as an argument.
      Are you planning on using the HTML::Template module?
      I hope the above example has given you an idea of how to tackle this.
      Let me know how you get on.

      Martin
      I've always stuck with File::Find and never really got involved into its fancy variants. I think you can print some opening tags as a preprocess action and some closing one at postprocess time. Check the documentation: there may be alternative ways, but this should be easy enough to be left as an exercise to the reader...

Log In?
Username:
Password:

What's my password?
Create A New User
Domain Nodelet?
Node Status?
node history
Node Type: note [id://501934]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this?Last hourOther CB clients
Other Users?
Others studying the Monastery: (7)
As of 2024-04-19 09:35 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found