I am a relatively new programmer with a decent foundation in Java (went through the entire Headfirst book last month), but I am much weaker with C/C++. I plan on going through a more comprehensive training of both at a later date, but at this moment I am committed to doing a project for school in C or C++ in a very short time frame (just over a week). I want to create a command line batch rename utility, i.e.:
command line input:
>rename *dog* *cat*
output:
dog1.jpg renamed to cat1.jpg
bigdog.zip renamed to bigcat.zip
horse.txt not renamed
etc
I knew that the first part of my program design would be searching for the replacement string in the existing filenames... but what I am just now coming to realize from scouring the web is that this functionality is not included in standard C/C++ libraries... right? It seems to require interacting with platform API's or using a 3rd party library, none of which I have experience with. At this point in time, I need to choose the right learning path to send myself down for the next few days:
1) learn the Windows API and interact with it directly from C (or C++?)
2) learn the "Microsoft Foundation Classes" (will these do what I need?)
3) learn a 3rd part library (the "Boost" filesystem library was suggested elsewhere)
If Linux is a better option I'd be receptive to that too.
Which would be the best option for me, given my experience and short timeframe? Any advice on C vs C++? I understand OO principles well from my Java experience... but I am still new to the C++ syntax so that might just be an added complication.
Thanks so much in advance for any advice!