title: C#: Archiving a File into Parts of 100MB
body: <p>In my application, the user selects a big file (>100 mb) on their drive. I wish for the program to then take the file that was selected and <strong>chop it up into archived parts</strong> that are 100 mb or less. How can this be done? What <strong>libraries</strong> and file <strong>format</strong> should I use? Could you give me some sample code? After the first 100mb archived part is created, I am going to upload it to a server, then I will upload the next 100mb part, and so on until the upload is finished. After that, from another computer, I will download all these archived parts, and then I wish to <strong>connect them into the original file</strong>. Is this possible with the 7zip libraries, for example? Thanks!</p>
  
  <p><strong>UPDATE:</strong> From the first answer, I think I'm going to use SevenZipSharp, and I believe I understand now how to split a file into 100mb archived parts, but I still have two questions:</p>
  
  <ol>
  <li>Is it possible to create the first 100mb archived part and upload it before creating the next 100mb part?</li>
  <li>How do you extract a file with SevenZipSharp from multiple splitted archives?</li>
  </ol>
  
  <p><strong>UPDATE #2:</strong> I was just playing around with the 7-zip GUI and creating multi-volume/split archives, and I found that selecting the first one and extracting from it will extract the whole file from all of the split archives. This leads me to believe that paths to the subsequent parts are included in the first one (or is it consecutive?). However, I'm not sure if this would work directly from the console, but I will try that now, and see if it solves question #2 from the first update.</p>