你还是看这个吧
procedure FmtStr(var Result: string; const Format: string;
const Args: array of const);
var
Len, BufLen: Integer;
Buffer: array[0..4095] of Char;
begin
BufLen := SizeOf(Buffer);
if Length(Format) < (sizeof(Buffer) - (sizeof(Buffer) div 4)) then
Len := FormatBuf(Buffer, sizeof(Buffer) - 1, Pointer(Format)^, Length(Format), Args)
else
begin
BufLen := Length(Format);
Len := BufLen;
end;
if Len >= BufLen - 1 then
begin
while Len >= BufLen - 1 do
begin
Inc(BufLen, BufLen);
Result := ''; // prevent copying of existing data, for speed
SetLength(Result, BufLen);
Len := FormatBuf(Pointer(Result)^, BufLen - 1, Pointer(Format)^,
Length(Format), Args);
end;
SetLength(Result, Len);
end
else
SetString(Result, Buffer, Len);
end;
procedure FmtStr(var Result: string; const Format: string;
const Args: array of const);
var
Len, BufLen: Integer;
Buffer: array[0..4095] of Char;
begin
BufLen := SizeOf(Buffer);
if Length(Format) < (sizeof(Buffer) - (sizeof(Buffer) div 4)) then
Len := FormatBuf(Buffer, sizeof(Buffer) - 1, Pointer(Format)^, Length(Format), Args)
else
begin
BufLen := Length(Format);
Len := BufLen;
end;
if Len >= BufLen - 1 then
begin
while Len >= BufLen - 1 do
begin
Inc(BufLen, BufLen);
Result := ''; // prevent copying of existing data, for speed
SetLength(Result, BufLen);
Len := FormatBuf(Pointer(Result)^, BufLen - 1, Pointer(Format)^,
Length(Format), Args);
end;
SetLength(Result, Len);
end
else
SetString(Result, Buffer, Len);
end;
解决方案 »
- 用 ttime 作 时间 比较 问题
- fast report的菜鸟问题
- 帮忙看看!
- 111
- 大家好,问个简单的问题,Canvas.textOut 到label上时,怎么保持不被刷新?
- 調查一下程序員一般使用什么中文輸入法
- 急用!求 对实数进行“四舍五入”的函数!
- select语句对表中数据的统计,查询.我头都搞晕了,快帮帮忙啊!
- 在ADOQuery中怎样将当前记录转移到一个已知内容的记录?
- 我的DBGrid的表格中单击某一个数据框时,总出现一个下拉箭头,怎样消除??
- 如何每次将新添加到数据库的记录移到最底部? 就好像写字一样. 急, pls help!!!
- 开发三层结构的数据库系统,DELPHI和VB.NET谁比较适合?
不过longinttostr为什么不自己写一个呢!
逐个地取出每一位的数字,换成字符填入字符串不难吧!
var m: Integer;
begin
Result := '';
While N div 10 > 0 do
begin
m := N mod 10;
Result := Char(m + Ord('0')) + Result;
N := N div 10;
end;
m := N mod 10;
Result := Char(m + Ord('0')) + Result;
end;