rocedure TForm1.Button1Click(Sender: TObject);var
iFileHandle: Integer;
iFileLength: Integer;
iBytesRead: Integer;
Buffer: PChar;
i: Integer
begin
if OpenDialog1.Execute then
begin
try
iFileHandle := FileOpen(OpenDialog1.FileName, fmOpenRead);
iFileLength := FileSeek(iFileHandle,0,2);
FileSeek(iFileHandle,0,0);
Buffer := PChar(AllocMem(iFileLength + 1));
iBytesRead := FileRead(iFileHandle, Buffer, iFileLength);
FileClose(iFileHandle); for i := 0 to iBytesRead-1 do
begin
StringGrid1.RowCount := StringGrid1.RowCount + 1;
StringGrid1.Cells[1,i+1] := Buffer[i];
StringGrid1.Cells[2,i+1] := IntToStr(Integer(Buffer[i]));
end;
finally
FreeMem(Buffer);
end;
end;
end;
iFileHandle: Integer;
iFileLength: Integer;
iBytesRead: Integer;
Buffer: PChar;
i: Integer
begin
if OpenDialog1.Execute then
begin
try
iFileHandle := FileOpen(OpenDialog1.FileName, fmOpenRead);
iFileLength := FileSeek(iFileHandle,0,2);
FileSeek(iFileHandle,0,0);
Buffer := PChar(AllocMem(iFileLength + 1));
iBytesRead := FileRead(iFileHandle, Buffer, iFileLength);
FileClose(iFileHandle); for i := 0 to iBytesRead-1 do
begin
StringGrid1.RowCount := StringGrid1.RowCount + 1;
StringGrid1.Cells[1,i+1] := Buffer[i];
StringGrid1.Cells[2,i+1] := IntToStr(Integer(Buffer[i]));
end;
finally
FreeMem(Buffer);
end;
end;
end;
解决方案 »
- 这句sql update 怎样修正?
- 去年5.15日到现在又是一年,时间过的真快!
- 如何打开网卡?PacketOpenAdapter不会用
- 提示"....EDBEngineError Invalid Length",不知如何改之!
- 新手问题!!!!
- dbgrid中的问题 ---在线等候
- 请问Delphi中有没有类似VB中的on ERROR goto 之类的错误捕获语句吗??(20分)在线等
- 散分的问题
- 请问:一个初学 DELPHI 者用 DELPHI6.0好,还是用DELPHI5.0好?
- delphi xe10 编译提示armlinuxandroideabild.exe找不到
- 大家帮忙看一下,此报表为何数据显示不出来?
- DsgnIntf.dcu是什么东西。
var
sFile:TextFile;
s:string;
begin
if OpenDialog1.Execute then
begin
AssignFile(sFile,OpenDialog1.FileName);
reset(sFile);
While not eof(sFile) do
begin
readln(sFile,s);
Memo1.Lines.Add(s) //这里可以进行你的计算!
end;
CloseFile(sFile);
end;
end;
Buffer: PChar;
Size: Byte;
begin
Size := Edit1.GetTextLen; {Get length of string in Edit1}
Inc(Size); {Add room for null character}
GetMem(Buffer, Size); {Creates Buffer dynamic variable}
Edit1.GetTextBuf(Buffer,Size); {Puts Edit1.Text into Buffer}
Edit2.Text := StrPas(Buffer); {Converts Buffer to a Pascal-style string}
FreeMem(Buffer, Size);{Frees memory allocated to Buffer}
end;Note: the same thing could be accomplished more simply as follows:procedure TForm1.Button1Click(Sender: TObject);begin
Edit2.Text := Edit1.Text;end;
var
sFileName: string;
begin
if OpenDialog1.Execute then
begin
sFileName := OpenDialog1.FileName;
Memo1.Lines.LoadFromFile(sFileName);
end;
end;