Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.05.08;
Скачать: CL | DM;

Вниз

Проблема произвести сортировку <U><B>с учетом регистра</B></U>   Найти похожие ветки 

 
AbrosimovA   (2003-04-24 14:50) [0]

Задача состоит в следующем:
1.Считать из текстового файла все строки в TStringList.
2.Отсортировать их в StringList с учетом регистра.

Делаю это так:

....

var FTxt: System.Text;
N: integer;

procedure TForm1.Button2Click(Sender: TObject);
var s: string;
P: integer;
begin
N:=0;
D:=TStringList.Create;
D.Clear;
D.Sorted:=true;
ListBox1.Clear;
AssignFile(FTxt, "File.txt");
Reset(FTxt);
while not eof(FTxt) do
begin
readln(FTxt,S);
if Pos("*",S)<>1 then //Отсеиваю строки начинающиеся с *
begin
P:=Pos(" ",S);
S:=Copy(S,1,P-1);
Inc(N);
D.Add(S);
end;
end;
ListBox1.Sorted:=false;
end;

Но загвоздка здесь в том, что нужной мне сортировки не происходит.

До сортировки: После сортировки(код выше): А нужно:
B a B
a B U
X s X
U t a
s U s
t X t

Т.е. сначала должны располагаться заглавные буквы по возрастанию, а затем строчные по возрастанию.

Буду рад принять любую помощь для разрешения этой проблемы.

Спасибо.


 
Palladin ©   (2003-04-24 14:53) [1]

лажа

D.Sorted:=true;
D.LoadFromFile("File.txt");


 
Карелин Артем ©   (2003-04-24 14:56) [2]

Нам помогут алгоритмы сортировки, либо 2 списка. Отдельно для маленьких и больших букв. Потом эти списки следует слить в 1.


 
AbrosimovA   (2003-04-25 08:16) [3]

А что за зверь
procedure CustomSort(Compare: TStringListSortCompare).
Может алгоритм сортировки задать с помощью этой процедуры.

Я так и не смог понять как мне заполнить то , что в скобках.



Страницы: 1 вся ветка

Текущий архив: 2003.05.08;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.017 c
14-23285
Дмитрий К.К.
2003-04-22 05:59
2003.05.08
Именинники 22 апреля


6-23248
Alexandr VZ
2003-03-11 20:04
2003.05.08
Определение настроек сети


9-22899
Эндрю2
2002-06-27 06:05
2003.05.08
Как сделать книгу рекордов в игре пятнашки


1-23062
wowik_cn
2003-04-24 09:50
2003.05.08
Формат данных в Excel


3-22929
softmaster
2003-04-20 19:11
2003.05.08
По группировке НДС