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