If (Left(mid_str,1)>='a' AND Left(mid_str,1)<='z') OR &
(Left(mid_str,1)>='A' AND Left(mid_str,1)<='Z') Then
return_string=return_string+Left(mid_str,1)
End If
return_string=Trim(return_string)
mid_str=Right(mid_str,Len(mid_str) - 1)
ELSE
char_min=Left(mid_str,2)
DO WHILE (start_pos+1) < end_pos
mid_pos=Int((start_pos+end_pos)/2)
FileSeek(f_number,(mid_pos - 1)*line_len,FromBeginning!)
IF FileRead(f_number,string_read)=-1 THEN
EXIT
END IF
IF Left(string_read,2)<char_min THEN
start_pos=mid_pos
ELSEIF Left(string_read,2)=char_min THEN
start_pos=end_pos
ELSE
end_pos=mid_pos
END IF
LOOP