Как сделать калькулятор в Delphi?

Delphi - объектно-ориентированный язык программирования, разработанный компанией Borland в 1995 году. Он основан на языке программирования Pascal, но имеет более расширенные возможности и добавлены новые функции.

Как Delphi реализует многоплатформенную разработку?

Delphi является интегрированной средой разработки (IDE), которая позволяет разрабатывать программное обеспечение для различных платформ, включая Windows, macOS, Android и iOS. Delphi достигает многоплатформенности с помощью...

Чтение бинарного файла

Советы » Файлы » Чтение бинарного файла

var

f: File

; c: Char; begin

AssignFile(f, 'this.bin'); Reset(f, 1); BlockRead(f, c, sizeof(c)); CloseFile(f); end

;

function

FindInFile(cFileName: string

; cCh: char): boolean; var

fFile: file

; aBuf: array

[1..1024] of

char; lFound: boolean; x, nRead: integer; begin

Assign(fFile, cFileName); Reset(fFile, 1); lFound := False

; repeat

BlockRead(fFile, aBuf, SizeOf(aBuf), nRead); x := 1; while

not

lFound and

(x <= nRead) do

begin

lFound := (aBuf[x] = cCh) Inc(x) end

; until

(nRead < SizeOf(aBuf)) or

lFound; FindInFile := lFound end

;

Взгляните на следующий код:

var

f: file

; c: Char; begin

AssignFile(f, 'c:autoexec.bat'); Reset(f, 1); <- Примечание: Размер записи = 1 байту это нормально! while

not

Eof(f) do

begin

BlockRead(f, c, SizeOf(c)); {Теперь обрабатываем c} end

; CloseFile(f); end

;

Для ускорения этой процедуры не следует за один проход читать по одному символу. Возможно, лучшим решением будет объявление PChar скажем, размером 200, и чтением за один проход блоков размером 200 байт. {например, BlockRead(f, p, 200);} Но для этого требуется немного больше кода, чем показано здесь... (Используйте все тот же recordsize, равный 1, меняется только blocksize).

Другое по теме:

Категории

Статьи

Советы

Copyright © 2024 - All Rights Reserved - www.delphirus.com