Hi Craig,
Assuming you'd be reading these files back in with Mathematica, I think a Cells/NotebookRead/Put/Get combo might be what you're looking for:
In[10]:= targetNb = EvaluationNotebook[];
cellExprs = NotebookRead@Cells@targetNb
Out[11]= {Cell[
BoxData[{RowBox[{RowBox[{"targetNb", "=",
RowBox[{"EvaluationNotebook", "[", "]"}]}], ";"}],
"\[IndentingNewLine]",
RowBox[{"cellExprs", "=",
RowBox[{"NotebookRead", "@",
RowBox[{"Cells", "@", "targetNb"}]}]}]}], "Input"],
Cell[BoxData[{RowBox[{RowBox[{"listFile", "=",
"\"cellExprList.m\""}], ";"}], "\[IndentingNewLine]",
RowBox[{RowBox[{"Put", "[",
RowBox[{"cellExprs", ",", "listFile"}], "]"}], ";"}],
"\[IndentingNewLine]",
RowBox[{RowBox[{"Get", "@", "listFile"}], "===", "cellExprs"}]}],
"Input"],
Cell[BoxData[{RowBox[{RowBox[{"seqFile", "=", "\"cellExprSeq.m\""}],
";"}], "\[IndentingNewLine]",
RowBox[{RowBox[{"Put", "[",
RowBox[{RowBox[{"Sequence", "@@", "cellExprs"}], ",",
"seqFile"}], "]"}], ";"}], "\[IndentingNewLine]",
RowBox[{RowBox[{"Get", "@", "seqFile"}], "===",
RowBox[{"cellExprs", "[",
RowBox[{"[", RowBox[{"-", "1"}], "]"}], "]"}]}]}], "Input"],
Cell[BoxData[
RowBox[{RowBox[{"ReadList", "@", "seqFile"}], "===",
"cellExprs"}]], "Input"]}
In[12]:= listFile = "cellExprList.m";
Put[cellExprs, listFile];
Get@listFile === cellExprs
Out[14]= True
In[15]:= seqFile = "cellExprSeq.m";
Put[Sequence @@ cellExprs, seqFile];
Get@seqFile === cellExprs[[-1]]
Out[17]= True
In[18]:= ReadList@seqFile === cellExprs
Out[18]= True
Hth,
William