I've prototyped a program in Python that groups files (ie, tar replacement) and I'm about to start with the real version, which will be in C. For reference, this is the header for the archives:
0#(creation date)#(creation time)#(creator name)#
(number of files)#(file 1's size)#(file 2's size)#...#(file n's size)#
0#(file 1's path)#(file 2's path)#...#(file n's path)#
Then it's a straight file system of the files. And the footer is just "## (eof):".
What I need to do is split the archive by that weird line in the header then take the line with the file sizes and use that to split up the actual data of the archive itself. (Ex: if file 1 is 30 bytes long, it reads 30 bytes into the data and gets the filename from line 3 of the header and writes the file.)
What I need from everyone else is either links to a good site to learn string handling in C, or sample code on string handling. I'll accept C++, but I'm trying to stay C. I'll put everyone's name who helps in the credits. :) (I'm calling this mar and so far makes smaller, more efficient files than tar.)