'sort the file records.txt containing several columns
'separated by comma
rec$ = file.read$("/records.txt")
column = 1 'column to be sorted
'convert the text file into an array$
dim record$(100) 'lets say max 100 lines
'extract the text line by line into an array
pos_start = 1
i = 0
do
pos_end = instr(pos_start, rec$, chr$(10))
if (pos_end <> 0)
record$(i) = mid$(rec$, pos_start, pos_end - pos_start - 1)
else
record$(i) = mid$(rec$, pos_start)
end if
pos_start = pos_end + 1
'print record$(i)
i = i + 1
loop while (pos_end <> 0)
num_records = i
'extract the given column
dim sort_elements$(num_records)
' sort using the given column
for i = 0 to num_records
sort_elements$(i) = trim$(word$(record$(i), column, ","))
next i
'now bubble sort
i = 0
j = 0
for i=0 to num_records-1
for j=i to num_records-1
if sort_elements$(i) > sort_elements$(j) then
a$ = sort_elements$(i)
sort_elements$(i) = sort_elements$(j)
sort_elements$(j) = a$
'reverse the initial line with all the elements
a$ = record$(i)
record$(i) = record$(j)
record$(j) = a$
end if
next j
next i
print "sorted lines:"
dim sort_elements$(0) ' clear the sort_element$ not required anymore (clear memory)
for z = 0 to num_records-1
print record$(z)
next z