<div dir="ltr"><br>
&lt;&lt;I ususally do something like this:<br>
<br>
(((FileStream readOnlyFileNamed: &#39;file.csv&#39;)<br>
 &nbsp; contentsOfEntireFile &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &quot; read and close &quot;<br>
 &nbsp; &nbsp; findTokens: String crlf) &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &quot; split into lines &quot;<br>
 &nbsp; &nbsp; &nbsp; reject: [:e | e isEmpty]) &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;&quot; lose empty lines &quot;<br>
 &nbsp; &nbsp; &nbsp; &nbsp; collect: [:e | e findTokens: $,] &quot; split into fields &quot;<br>
<br>
Regards,<br>
Zulq.&gt;&gt;<br>
<br>
Andy Burnett wrote:<br>
&gt; I have a small database containing questionnaire responses. The DB can<br>
&gt; output the responses (mainly descriptive paragraphs) in CSV format.<br>
&gt; Ideally, I would like to read each of the records into a collection of<br>
&gt; some kind. &nbsp;I was hoping that there might be a &#39;fromCSV:&#39; method, but I<br>
&gt; haven&#39;t found one. &nbsp;One approach I had thought about was to edit the<br>
&gt; text so in order to create a series of array definitions, and then paste<br>
&gt; that into a workspace. However, that does lack a bit of elegance! So, is<br>
&gt; there a neat way of doing this?<br>
&gt;<br>
&gt; Cheers<br>
&gt; AB<br><br>That&#39;s great Zulq, much better than my rather procedural attempts.<br><br>thanks<br>AB<br></div>