Steve,
I now have your file, and I am seeing a few problems, some with the SBasic (as posted) and a minor problem with the file.
The following SBasic will not work because of the length of the file:
var vall as string = ""
vall = @insert("c:\temp\colors5.txt")
writeln("vall = " + vall)
The file is 382K as received. The writeln window will vertically wrap every 32K (clear, and start at the top again) and dumping 382K on a single line is just too much for it to manage. You will need to break your string into smaller pieces if you need to send them to the writeln window, so each line of text is smaller.
The good news is that the variable "vall" is getting set to the entire string - even if that cannot be shown using a single writeln call.
The other attempt to read the file is suffering because, FileOpen expects to be used read/write - so if the file already exists it positions the "file pointer" (the position where the next operation will occur in the file) to the end of the file - to make appending to an existing file very easy. Before reading from an existing file, you should always do a "FileSeek" operation. The following will read the first line in your file:
vfilehandle = fileopen("c:\temp\colors5.txt")
fileseek(vfilehandle, 0)
filereadln(vfilehandle, vline)
writeln(vline)
fileclose(vfilehandle)
The last problem I am seeing, is that the file is not "DOS" formatted. All operating systems other than those from Microsoft (Unixes, VMS, Mac, etc..) end each line with a single line feed. Microsoft OSs (on the other hand) end each line with a linefeed / carriage return pair. The file you sent only has the single linefeed. So, it appears that it originated on an operating system other than a Microsoft OS. This is not a bad problem because Sesame and most other programs are built to accomodate either line ending.