Главная страница
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.026 c
11-23048
Proton
2002-07-30 19:30
2003.05.08
RoterPro


8-23234
CjCrazy
2003-01-30 08:57
2003.05.08
просмотр фильмов с фтп


3-22960
VlGrig1961
2003-04-16 11:48
2003.05.08
Oracle8 как уменьшить размер Tmp1orcl.ora


4-23427
Test
2003-03-10 15:37
2003.05.08
Помогите отловить положение мыши вне формы!!!


1-23097
Leviathan
2003-04-26 21:22
2003.05.08
Помогите с Паскалем!