I've been given a project which seems pretty simple at its face, but since I never really work in the System.IO namespace, I'm having a hard time getting the pieces together in my head.

I'm not looking for someone to code this for me, just point me to the classes/methods and overall workflow I'll need.

Ideally, this will be a console app that will parse the file names of a series of files in a given directory, then create directories in another locations and copy the appropriate files into them. It would take in two command line arguments representing the source and destination paths (ideally in either absolute OR relative path structure) then after parsing the arguments read the file names in the source directory and create the required directory structure in the destination and copy files appropriately.

ex 1: myCopyApp.exe c:\Source d:\destination (absolute pathing)
ex 2: myCopyApp.exe ..\Source ..\..\Destination (relative pathing)

So the questions I have basically are:

1. How do I properly parse the input parameters to establish whether either one is relative or absolute pathing?
2. What classes in the IO namespace will I need to:
a. Establish where my start drectory is in the case of relative pathing.
b. Establish the source & destination directories that I'll be working with
c. Create the new directories.
d. Copy the files.

Feel free to ask for more info if you need it. Again, I'm not looking for someone to code this for me. Just looking for the correct objects in the IO namespace and thoughts on parsing and dealing with relative pathing in those objects.

Thanks