Тэкставы файл — камп’ютарны файл, які змяшчае тэкставыя даныя, звычайна пададзеныя ў выглядзе радкоў.
Тэкставым файлам супрацьпастаўляюцца двайковыя файлы, у якіх змяшчаюцца даныя, не разлічаныя на іх разгляд у якасці тэксту (напрыклад, файлы, якія захоўваюць гук ці відарыс).
У адрозненне ад тэрміна «тэкставы фармат», які апісвае змест даных, тэрмін «тэкставы файл» датычыцца іменна файла і апісвае яго як ёмістасць, што захоўвае такія даныя.
Тэкставы файл уяўляе сабой паслядоўнасць сімвалаў (у асноўным друкавальных знакаў, якія належаць таму ці іншаму набору сімвалаў). Гэтыя сімвалы звычайна згрупаваны ў радкі (англ.: lіnes, rows). У сучасных сістэмах радкі падзяляюцца падзяляльнікамі радкоў, у мінулым мела месца захоўванне радкоў у выглядзе запісаў сталай ці зменнай даўжыні (гл.: Перфакарта). Часам канец тэкставага файла (асабліва калі ў файлавай сістэме не захоўваецца інфармацыя аб памеры файла) таксама адзначаецца адным ці болей адмысловымі знакамі, вядомымі як меткі або маркеры канца файла.
Тэкставы файл можа змяшчаць як фарматаваны, так і нефарматаваны тэкст.
Перавагі:
Недахопы:
З прычыны сваёй прастаты тэкставыя файлы нярэдка выкарыстоўваюцца для захоўвання службовай інфармацыі (напрыклад, файлаў-часопісаў). Тэкставы фармат служыць асновай для многіх адмысловых фарматаў (напрыклад, .іnі, SGML, HTML, XML, TeX, зыходных тэкстаў моў праграмавання).
У тэкставым файле тэкст можна захоўваць як у нефарматаваным, так і фарматаваным ці размечаным выглядзе (напрыклад, Rіch Text Format, HTML), дзе к кожнаму асобнаму сімвалу можна прымяніць фарматаванне (шрыфт, напісанне, памер і інш.).
У DOS і Windows для файлаў з нефарматаваным тэкстам звычайна выкарыстоўваецца пашырэнне .txt. Тым не менш, тэкставымі могуць з'яўляцца файлы з любым іншым пашырэннем ці без яго. Напрыклад, зыходныя коды праграм звычайна захоўваюцца ў файлах з пашырэннямі, якія адпавядаюць мове праграмавання, на якой напісаны праграмы (.bas, .pas, .c).
Фарматаваны тэкст (тэкст с разметкай) звычайна захоўваецца ў файлах з пашырэннем, якое адпавядае фармату ці мове разметкі — .rtf, .htm, .html.
Гістарычна для кадзіравання тэкставых файлаў выкарыстоўваўся 7-бітны набор сімвалаў ASCII, а таксама 8-бітныя EBCDіC і разнастайныя пашырэнні ASCII. У 8-бітных кодавых старонках агульнапрынята размяшчаць у першай палове кодавай табліцы сімвалы, якія адпавядаюць ASCII.
Перавагай 8-бітнага падання тэксту з'яўляецца праграмная прастата і незалежнасць ад праблемы парадку байтаў ці даўжыні машыннага слова на розных платформах. Недахоп — вялікая колькасць разнастайных стандартаў, што можа прыводзіць да несумяшчальнасці.
Выкарыстанне Unіcode ў тэкставых файлах хоць у асноўным вырашае «праблему кадзіровак» і стандартызуе ўжыванне кіруючых сімвалаў, але стварае свае праблемы. У большасці сучасных сістэм найменшай непадзельнай адзінкай інфармацыі ў патоку даных ёсць байт (8 біт), а для кадзіравання аднаго сімвала з Унікода патрэбна некалькі байтаў. Праблема вырашаецца шляхам ужывання несумяшчальных паміж сабой сістэм UTF-8 і дзвюх версіі UTF-16 (UTF-16LE і UTF-16BE з процілеглым парадкам байтаў). Часам у пачатак файла дадаюць адмысловы сімвал-метку (U+FEFF[1]), які дазваляе дакладна распазнаць фармат. UTF-8 мае перавагу адваротнай сумяшчальнасці з ASCII, аднак праграмная апрацоўка тэксту ў UTF-8 ускладняецца зменным памерам сімвала. Таксама, тэксты ў Унікодзе адрозніваюцца яшчэ большай лішкавасцю, чым 8-бітныя.
Розныя аперацыйныя сістэмы прытрымліваюцца свайго прадстаўлення сімвалаў перавода радка і канца файла. У Unix перавод радка складаецца з аднаго сімвала LF (код 10), у Mac OS — з сімвала CR (код 13), а ў DOS і Windows перавод радка кадзіруецца паслядоўнасцю двух сімвалаў: CR і LF.
Апроч названых, у тэкставых файлах ужываюцца такія сімвалы, як табуляцыя (код 9) і перавод старонкі (код 12).