title: What is the best strategy for writing my collections and objects to disk and reimporting them later?
body: <p>I have a number of collections and objects set up that have a one-to-many relationship that is four levels deep. <code>CollectionA</code> contains a number of <code>CollectionB</code> objects and <code>CollectionB</code> contains a number of <code>CollectionC</code> objects and <code>CollectionC</code> contains a number of <code>Content</code> objects. </p>
  
  <p>After the user has spent time populating all of these collections and objects with the necessary data, they need to be able to save all of the properties of each object and then read the output file and start where they left off. </p>
  
  <p>I know this is a somewhat broad question so I'm looking to see which direction I should head in my research on how to do this.  Right now I'm most concerned with the File I/O and I'm thinking of two different routes.  </p>
  
  <p>It's an excel project, so I was thinking I could loop through all of the Collections and objects from the top down and write their values to a spreadsheet and then loop through the spreadsheet rows and output those to a delimited text file.  Then do the reverse to read the text file back in - from text to spreadsheet, then from spreadsheet into collections and objects.</p>
  
  <p>Maybe the other option would be to bypass the spreadsheet and use a TextStream? Would that be possible and would it be the way to go if I'm planning on converting this VBA application to standalone VB.NET sometime in the future?</p>