Управљање Асции (текстуалним) датотекама са Делпхи кода

Једноставно речено, текстуалне датотеке садрже читљиве АСЦИИ карактера. Рад са текстуалном датотеком у Делфију можемо сматрати аналогним репродукцији или снимању информација на ВЦР касети.

Иако је могуће направити измене у текстуалној датотеци, прескочите током обраде информација или додајте неке податке у датотеку која није на крају је препоручљиво користити текстуалну датотеку само када знамо да радимо са обичним текстом и нема таквих операција неопходно.

Сматра се да текстуалне датотеке представљају низ знакова форматираних у редове, при чему се сваки ред завршава маркером крајњег реда (а ЦР / ЛФ комбинација).

ТектФиле и метода додељивања

Да бисте започели рад са текстуалним датотекама, морате повезати датотеку на диску са променљивом датотеком у вашем коду - изјавите променљиве типа ТектФиле и користите АссигнФиле поступак да повежете датотеку на диску са датотеком променљива.

Читање информација из текстуалне датотеке

Ако желимо да поново прочитамо садржај датотеке на низу низа, само један ред кода ће обавити посао.

instagram viewer

Да бисмо прочитали информације из датотеке ред по ред, морамо отворити датотеку за улазни помоћу Ресетовати процедура. Када се датотека ресетује, можемо да је користимо РеадЛн да бисте прочитали информације из датотеке (чита један ред текста из датотеке, а затим прелази на следећи ред):

Након додавања једног ретка текста из датотеке компоненти мемоата СомеТктФиле је потребно затворити. Ово ради Близу кључна реч.

Такође можемо користити поступак читања да бисмо прочитали информације из датотеке. Читање функционише као РеадЛн, осим што не помиче показивач на следећи ред.

ЕОФ - крај датотеке

Користите функцију ЕОФ да бисте били сигурни да не покушавате да прочитате преко краја датотеке. Рецимо да желимо да прикажемо садржај датотеке у оквирима за поруке - један ред по један док не дођемо до краја датотеке:

Напомена: Боље је користити Док је петља него петља До да узму у обзир (мало вероватну) могућност да датотека постоји, али да не садржи никакве податке.

Писање текста у датотеку

Тхе ВритеЛн је вероватно најчешћи начин за слање појединачних информација у неку датотеку. Следећи код ће прочитати текст из компоненте Мемо1 (редак по ред) и послати га у неку новостворену текстуалну датотеку.

У зависности од стања датотеке која је дата процедури Реврите, ствара нову датотеку (отвара датотеку за излаз) са именом додељеним СомеТектФиле. Ако датотека са истим именом већ постоји, брише се и на њено место се ствара нова празна датотека. Ако је СомеТектФиле већ отворен, прво се затвара, а затим поново креира. Тренутна позиција датотеке постављена је на почетак празне датотеке.

Напомена: Мемо1.Линес. СавеТоФиле ('ц: \ МиТектФиле.ткт') ће урадити исто.

Понекад ћемо требати само додати неке текстуалне податке на крај постојеће датотеке. Ако је то случај, назваћемо Додати како би се осигурало отварање датотеке са приступом само за писање, а показивач датотеке постављен на крају датотеке. Нешто слично:

Будите свесни изузетака

Уопштено, увек би требало да користите Изузетак руковање када радите са датотекама. У / И је пун изненађења. Увек користите ЦлосеФиле у крајњем блоку да бисте избегли могућност оштећења ФАТ-а корисника. Сви претходни примери би требало преправити на следећи начин:

Манипулирање са структурираним датотекама

Делпхи има могућност управљања АСЦИИ датотекама и датотекама у којима се налазе бинарни подаци. Ево техника за рад са њима откуцане и нетипизиране (бинарне) датотеке.

instagram story viewer