0

我有一个大的文本数据文件,每行看起来像这样

10005=08/18/09,No BS,25094,wrg1

并且数据乱序(即等号前的数字)

我将此文件作为名称值对加载到 StringList 中。TStringList 排序函数当然不会,因为数字是字符串而不是整数。

在将它们加载到 TStringList 之前,我如何才能将它们整理好?

是否有一个快速函数可以让我执行文件,该函数返回一个我可以分配给 TStringList 的 TStrings?

谢谢

4

1 回答 1

4
function StrCmpLogicalW(sz1, sz2: PWideChar): Integer; stdcall;
  external 'shlwapi.dll' name 'StrCmpLogicalW';

function MyCompare(List: TStringList; Index1, Index2: Integer): Integer;
begin
  Result := StrCmpLogicalW(PWideChar(List[Index1]), PWideChar(List[Index2]));
end;

用法:

  StringList.CustomSort(MyCompare);
于 2013-03-15T07:05:37.457 回答