首页 > 智能影音 >

TXT中藏奥秘

说起TXT文本文件,你一定首先会想到Windows的“记事本”程序。似乎TXT文本文件就是记事本程序的“专利”。但实际上,TXT文本文件只不过是记事本程序的一个常用“产品”而已,我们用其他许多程序都可以“生产”出TXT文本文件来。TXT文本文件看似简单,但其实所涉及的知识和技能,以及围绕它所能展开的话题却是十分广泛的。本专题我们就围绕TXT文本文件这一核心,一同走进TXT文本文件的世界,探索TXT文本文件及其使用技巧的奥秘。

文|何超 圆圆

TXT文本文件也称纯文本文件。是指保存在计算机中,只包含文字、符号、数字和换行标记,扩展名为.TXT的文件。但这并不是说,文本文件就是TXT文件,还有许多扩展名不是.TXT的文件,它们的内容其实也是上述的文字、符号、数字和换行符等,其实它们也是纯文本文件,例如各种程序的源代码。本文我们主要讨论TXT文本及文本文件,程序代码不是主要讨论的内容。


(资料图)

○一、“性格”分明的TXT文本文件

TXT文本文件的最大优点就是占用空间小。现在笔者手里有一个内含3163万字,容量为37.7MB的超大TXT文本文件。这个文件的内容到底有多少呢?如果觉得不够直观,那么我们用一个实例来进行测算——如果你每天能写一万字,那么需要写上3163天,也就是将近9年的时间,才能写完这些内容,但这些内容作为纯文本存储,其所占用的空间仅仅有37.7MB而已。可见,即便是一位疯狂的作家,如果用TXT文本文件来存储其所写作作品,那么一辈子仅用一张512MB的闪存卡就足够了。

(图1:3163万字的TXT文本仅占用37.7MB空间)

易于在网络上传播,是TXT文本文件的另一个优势。由于TXT文本的“体型”小,所以它在网络上传播是最为容易的。在早年带宽或网速比较紧张的互联网环境下,人们既希望在网络上能够传播更多的内容,又希望其他人能够快速地看到这些内容,因此最好的办法便是直接将TXT文本编排在HTML网页中,辅以必要的颜色变化进行发布,而不是将它们做到漂亮的图片中来引人关注;或者干脆直接将一些TXT文本文件做成链接供人们下载,例如早期的网络小说等。而如今,虽然网络速度普遍增快,但谁有能保证或许在某个偏僻的角落里,某人用一台古老的电脑上网,查看一张写入漂亮图片中的文字时,正为迟迟不能显示出内容而不着急呢?正因为如此,为了适应不同网速终端的访问需求,要传达的信息以TXT文本的形式来发布是最为保险的办法。

(图2:将TXT文本编排在HTML网页中最容易查看)

虽然说TXT纯文本文件优点突出,但它的缺点也同样明显。由于TXT文本文件只包含文字、符号、数字等,因此如果它不依托具有更多格式支持的编辑器,就难以展现出形式多样的版面效果。用过记事本之后,你一定有所体会,当我们希望以更加丰富多彩的形式来表达一篇文档的内容时,记事本程序由于对格式支持的功能匮乏而显得很无能。这时,我们一定会首先想到Word、WPS,甚至是Photoshop之类的专用软件。只有使用此类软件,才能排出更加耀眼的作品,赋予文字更大的魅力。

(图3:TXT文本依靠支持丰富格式的编辑器才能展现出魅力)

○小技巧:两招改变记事本程序的千篇一律

是不是觉得记事本程序窗口中的文本或代码太单调、太不显眼?其实,Windows 10的记事本程序也允许我们改变字体种类和大小。在打开的记事本程序中,选择菜单命令“格式→字体”,然后在“字体”对话框中选择字体的类型以及大小,这时编辑窗口中的字体就会得到改观。

如果对窗口中的字体大小不够满意,那么可以利用菜单命令“查看→缩放→放大/缩小”,或者直接在编辑窗口中按下“Ctrl+加号”或“Ctrl+减号”,逐步微调字体的大小即可。

(图4:记事本程序也能显示亮眼的大字)

(图5:在记事本程序中微调字体的大小)

○二、创建TXT文本文件方法多

在使用DOS的年代,TXT文本文件的编辑工具最早是行编辑命令,后来出现了字符形式的编辑器EDIT,那时已经这是很了不起的编辑器,但如果拿到现在来看真是太简陋了。到了Windows时代,我们最常用的TXT编辑工具是记事本程序,其他文字处理软件也大都支持TXT文本文件的读写,如Windows自带的写字板程序,以及Word、WPS等专业编辑工具。利用各类第三方编辑软件以及程序设计工具软件,也均可以创建和编辑TXT文本文件。

●不用先开“记事本” 右键创建更简单

先双击记事本程序图标,打开之后输入内容,然后再将TXT文件保存到一个目标位置,这当然是创建TXT文本文件的常规方法。但这种方法不如用右键菜单命令来创建更加方便:直接在目标文件夹内的空白处单击鼠标右键,然后依次选择“新建→文本文档”,这样不但可以立马创建一个文本文件,而且可以顺带将文件名更改为自己想要的名字,最后双击这个空文件,便会自动打开记事本程序来编辑了。

(图6:用右键菜单创建TXT文本文件更方便)

◇小技巧:记事本如何创建TXT之外的文本文件

除了创建TXT文本文件外,记事本程序可以创建各类程序的源代码文件,这些其实也是文本文件。许多程序员在应急时都会使用记事本程序来创建源代码文件。创建的方法也很简单,只需开启一个新的记事本程序窗口,输入程序代码内容,在下达另存文件命令“文件→另存为”或按下“Ctrl+Shift+S”时,将“保存类型”选择为“所有文件 (*.*)”,然后在“文件名”框中输入自己所需要的程序文件名及扩展名即可。例如,当我们输入了C++语言的源代码之后,将其命名保存为“mypro.c”文件即可。

(图7:用记事本创建TXT之外的程序代码文本)

● 利用专业编辑工具 创建TXT文本文件

用专业级的文字编辑软件,如Word或WPS等,创建TXT文本文件的基本方法非常简单。只需在“文件”菜单中选择“另存为”命令,起好一个名字,即可完成TXT文本文件的创建。其实,创建文本文件另外还有其他方法和技巧,例如“选择性粘贴”法、记事本过滤法等。

(图8:用WPS创建TXT文本文件)

“选择性粘贴”法是将复制的一些带有排版格式的文字内容,滤掉格式之后,仅留下其文字内容以获得纯TXT文本的方法,常用来将来自网页或专业文档编辑工具中的带格式文本转换为无格式的纯TXT文本。在WPS办公软件、微软Office软件,以及一些网络浏览器中,均含有“选择性粘贴”的特殊粘贴选项。

而记事本过滤法则是另一种过滤格式的方法,我们可以先将含有格式的文本复制并粘贴到记事本程序中,由于记事本程序对许多格式的不支持,这样在粘贴的过程中便会自动丢失这些格式,直接将带格式的文本复制过来,即可获得TXT纯文本。最后将文件保存下来,即可获得TXT文本文件。

●TXT文本文件创建与处理的“大拿”——EmEditor

EmEditor是源自日本的一款文本编辑和处理工具,它丰富的文本处理功能以及对大文本的处理能力,深受以处理TXT文本为主的文字编辑以及各类程序员们的青睐。

EmEditor支持超级查找和替换,由于可以使用正则表达式,给文本处理提供了极大的想象和实现的空间。

(图9:功能超群的TXT文本编辑器EmEditor)

无限扩展的插件,又给该软件提供了功能的不断扩充,能够满足更多文本处理的需求。利用EmEditor软件的插件,我们可以方便地实现字体和行距的改变、字号的缩放、大小写的转换、窗口的分割与合并、段前段后空格以及空行的自动删除、重复行的删除、字数的统计、繁简体字的转换等操作。如果TXT文本文件中有一系列数据,或者是一个名单的列表,那么还可以实现文本列表中数据的排序。

而有规律的重复性动作,依靠“宏”的录制和利用,可以让重复的劳动自动执行,可以大大解放操作者的双手劳动。

在该软件中,我们还可以轻松实现两个文本文件的比较,大文本文件的读取,分割、合并等操作。

下面我们将会结合一些具体的实例,来讲述该软件在日常操作中的应用。

○三、TXT文本处理技巧贴心大放送

虽然TXT文本文件的创建比较简单,但在TXT文本文件的使用过程中,有许多技巧还是需要我们去探索和掌握的。如果不能掌握这些方法和技巧,在遇到某些问题时可能会感觉无从下手或疑惑不解。下面我们就列举一些与TXT文本或文本文件处理相关的技巧和案例。

●超大TXT文件 打开有诀窍

也许你会觉得,打开一个TXT文件不是一件容易的事吗?双击文档,自动启用记事本程序不就解决问题了吗?那么,如果你手头上拥有一个从服务器数据库中导出的容量为上百MB的“大个头”日志TXT文件,试试看是什么体验。

看到网上有一位读者问,为何我在一个还不算慢的电脑上,用记事本打开一个30MB的文本文件,等了好一阵子才看到其中的内容?

(图10:30MB的文本文件用记事本程序打开很缓慢)

◇小知识:为何记事本程序打开文本如此缓慢

其实,我们平时之所以感觉用记事本程序打开TXT文件是很轻而易举的事情,那是因为它主要是为打开普通容量的TXT文件而设计和准备的,况且人们日常使用电脑也不会有超大的TXT文本,因此才不会感觉到吃力。但上当下大数据越来越火爆的日子里,百MB的TXT文件毕竟也可能会遇到,例如将一个大型数据库中的数据导出为TXT文件,就很有可能生成一个几十甚至几百MB的文件。那么,究竟记事本程序能支持打开多大的TXT文本文件,打开这样的文件,最好的方法是什么呢?

在早期的Windows版本中,例如Windows 98的记事本程序只能打开小于64KB的文本文件,如果打开的文本文件超过这个值,那么会提示“文件太大,记事本无法打开,要用写字板读取文件吗?”这时,有人便想出一个办法,用修改十六进制文件的编辑器,例如UltraEdit或Winhex打开notepade.exe文件,修改其中某个地址的偏移值,然后也能打开大于64KB的文件。

之后版本的Windows虽然超越了这个限制,可以打开更大容量的文本文件,但是当打开几十个MB的文档时,就会让人明显感觉到很吃力了。要打开一个上百MB的文档,虽然可以经历一段漫长的时间后等来打开的结果,但这往往是人们所不能忍受的。因此,遇到这种情况,更多人是去选择换一个其他的文本编辑器来完成这项任务。

我们以上面介绍的EmEditor为例,如果要打开一个比较大的TXT文件,双击该文件,软件会默认在文档窗口的右侧弹出“大文件控制器”的设置面板。我们可以在其中选择打开整个文件还是打开文件的开始部分、结尾部分或中间部分。如果是打开某个区间的一段文本,则设置“从”某个位置“到”某个位置的值即可。

(图11:通过大文件控制器来控制文件的打开部位)

如果不想使用大文件控制器来打开一个大文件,可以到“自定义”对话框中的“文件”选项卡下,清除“当打开一个大文件时,显示大文件控制器”这个复选框。在关闭了这个选项的情况下,若是下次要使用大文件控制器,可以通过“查看”下拉菜单中的“大文件控制器”来手动开启大文件控制器。

(图12:通过设置来关闭自动打开大文件控制器的功能)

(图13:通过菜单命令随时打开大文件控制器)

除了上述的EmEditor软件外,还有一款更加轻巧的小工具LogViewer Pro,这是一款不足1MB的小软件,却能够打开超大文本文件。它是一个专用的日志查看软件,当电脑用久了之后,尤其是一些服务器的系统,其中会积攒有一些超大规模的日志文件,这时用该软件就可以轻松查看这些文件了。该软件可以支持4GB甚至更大的日志文件的查看。这里所说的日志文件,其实也就是编码为ANSI、OEM、Unicode LE、Unicode BE等的文本文件。它还支持文件内容的搜索、打印等,能够让我们快速找到有用的信息并记录下来。

(图14:用LogViewer Pro打开超大文本文件)

另外,还有一款非常专业的文本编辑软件PilotEdit,该软件在打开各种编码的超大文件方面也是一把“好手”。除此之外,该软件还有许多编辑相关的其他高级功能。限于篇幅,这里不再展开叙述,后续有机会再用专门的篇幅为大家介绍这款软件。

●同一TXT文件 编码有说道

有时,当我们打开一个TXT文本文件的时候,发现其内容全是乱码;还有的时候,在编辑完某篇TXT文本后,存盘时系统会提示我们是否要保存为某种编码格式。可见,TXT文件的编码不是唯一的,出现乱码或要求选择编码,往往是因为文件保存时的编码格式与读取环境所要求的编码格式不匹配造成的。

在用记事本程序编辑完一篇文本之后,如果要保存文件,Windows 10中默认的编码格式一般为UTF-8。其实还有其他格式可选,例如ANSI、UTF-16BE/LE等,点开“编码”下拉列表就可以看到了。

(图15:记事本程序保存文档时的编码选择)

在实际应用中,我们接触比较多的文本编码有3种:ASCII、ANSI和UNICODE,其中ASCII码是后两种编码或大多数常用编码的基础。ASCII编码为Windows早期的编码,只能表示256个符号(含控制符号),用它来表示英文足够,其中键盘上可见的符号(大小写英文字母、数字、英文符号等)的编码范围是从32到126。但用来表示汉字等双字节符号就不够了,因此后来出现了中文字符集GB2312,以及后来的GBK大字符集,这些都属于ANSI编码。由于这些编码在各国语言环境下的兼容性问题,因此又发明了Unicode统一字符集。我们在记事本程序的“另存为”对话窗口中看到的编码,除ANSI之外的其他几种选择,就属于Unicode统一字符集之列。而UTF-8则是目前、尤其是网页中比较流行的一种格式,被Windows 10记事本程序设为默认的保存编码格式。

(图16:因编码不兼容而出现的TXT文本乱码显示)

如果将一段文本保存为上述的不同格式,那么若是转到Windows系统语言为日语或其他类语言的环境下,打开用ANSI编码的文件阅读时,就可能会看到乱码显示,而用Unicode字符集的其他编码格式保存的文件,都能正常显示。由此也可以获得一个启示,如果我们需要将TXT文本发送给国外的朋友阅读,那么就要选择Unicode字符集的编码来保存后发送,例如选择UTF-8编码。

此外,如果在打开一篇TXT文本时出现了乱码显示,那么可以将其以该文本默认格式之外的一种其他编码格式另存,然后重新打开,一般可以恢复原有的正常显示状态。此外,使用记事本程序的,还可以尝试在“字体”设置对话框中,将“脚本”选择为一种其他类型。

(图17:在记事本程序中设置其他脚本编码消除乱码)

还有一种解决方法是在Windows 10中搜索“区域设置”,进入区域设置窗口后点击“其他日期、时间和区域设置”,随后在出现的控制面板“区域”窗口中,切换到“管理”选项卡,然后点击“更改系统区域设置”按钮,并将当前系统区域设置切换为一种不同的选项。还可以勾选“使用Unicode UTF-8提供全球语言支持”复选框。这样也可以消除乱码文本显示。

(图18:在“区域”设置窗口中点击“其他日期、时间和区域设置”)

(图19:在“区域”设置窗口中切换全球语言支持选项)

●TXT文本文件标签的妙用

在EmEditor窗口中打开TXT文本文件之后,别小看一个小小的TXT文件标签,我们可以利用它来完成许多实用任务。如果在编辑TXT文本文件的同时,需要处理与它同在一个文件夹中的其他文件,或者进入该文件夹的命令窗口运行一些命令,那么可以右键单击该文件的标签,从中选择需要的选项来完成任务。

(图20:TXT文本文件标签的妙用多)

例如,选择“从该文件夹中打开…”,可以打开数十种程序代码文本;如果需要在该文件夹中运行程序或做其他更多的事,则选择“打开所在文件”(或直接按下“Alt+Shift+E”组合键);如果想要进入该文件所在位置的命令窗口执行命令,那么选择“打开命令提示符”或“打开PowerShell”选项。此外,如果正在处理的某个程序代码文本或说明文档中正好需要引用该TXT文本文件所在的磁盘路径,那么选择“复制路径”即可。

(图21:进入TXT文本所在的文件夹选择更多的其他类型文本文件)

●TXT文本文件的拆分处理

对于一个“体量”比较大的文本文件,我们除了可以用上面介绍的支持大文件阅读和处理的编辑器来处理外,还可以采取化整为零的策略,即将大文本文件拆分为一些小文件。EmEditor软件就有这样的功能,我们以拆分一个38MB大小的TXT文件为例,该文件有95万多行的内容。

在EmEditor编辑窗口中点击“工具→分割文件”菜单命令,然后打开上述的TXT文件。如果文件已经在编辑窗口中打开,那么选择“当前文件”。接着指定分割的行数单元,例如我们按每10000行为一个文件来切分,则输入10000。

(图22:按行数分割大文件的参数设置)

在下一页中,软件会默认给出分割的文件所在的文件夹以及文件名的模板,用户也可以自行定义位置和文件名,我们就以默认的设置为例。

(图23:定义分割文件的位置及文件名)

当参数配置完成之后,我们还可以选择将参数保存起来以供下次使用。

(图24:保存配置参数以供下次使用)

点击“下一页”后开始分割,分割完成后就能在指定的目录中获取系列分段文件了。本例我们共获得了96个TXT子文件。

●文本书签在TXT切割中的妙用

也许你会说,用上述的办法按行数切割文本太过“一刀切”,这样无法将文本按照合适的内容分割开来,会形成两个相邻文件内容的上下文衔接不完整。那么,是否能够按照文件的内容大意,有的放矢地分类切割文本文件呢?当然可以。我们依然可以使用EmEditor软件的切割功能,利用它所提供的“书签”功能来辅助切割,便可以实现。具体方法如下:

首先,选中需要切割的分界段落,然后点击“书签→设置或清除书签”(或直接按下快捷键“Ctrl+F2”),这样便会给分界段落加上一个书签。当然,这个分界段落也可以是一个空行。按此方法给所有切割分界加上书签。

(图25:为分界段落设置书签)

然后再执行“工具→分割文件”命令,并选择“在每个书签行之前”选项,这样便会以设定好的书签之前为界限,将文本文件按照设定好的书签数来进行分割了。本例中我们设置了3个书签,最后便会生成4个分割文件。

(图26:按设定好的书签数来分割文件)

●TXT文本文件加密方法多

要给Word、WPS或PDF文件加密,此类的编辑软件中一般均提供了文件加密码保存的功能。但是,如果要将一篇涉密的TXT文本文件加密保存,那么依靠Windows记事本程序恐怕就难以做到了。在这种情况下,除了借用上述的专业编辑器的加密功能外,我们当然还可以将文本用WinRAR或好压等压缩工具压缩,并在压缩的同时设置密码保护,然后删除源文件。那么,除此之外还有别的方案吗?

其实,还有专门加密TXT的软件可选。例如,上面的火速链接文章中介绍了一个FileFriend软件。该软件除了具有文件的拆分和合并功能外,它还可以对拆分之前或拆分后的文件加密,有两种加密方法可选。

(图27:FileFriend软件能够对拆分文本进行加密)

为了避开Windows记事本程序只能编辑文本但不能加密文本的麻烦,我们还可以使用本刊此前介绍过的一款Crypto Notepad软件来编辑和保存文本,用它在编辑器内编辑完文本后,直接保存为加密格式,更加方便、安全。

(图28:用Crypto Notepad编辑完TXT文本后加密保存)

● 让记事本下岗 TXT编辑器寻替代

除了上面介绍的一些TXT文本文件的编辑器之外,能够替代Windows记事本的、功能更为强大的编辑器还有许多。本刊就曾经介绍过不少这方面的小巧实用的工具软件。 CF

原文刊登于2022 年 12月 27 日出版《电脑爱好者》第 22 期

END

更多精彩,敬请期待……

责任编辑:Rex_23

推荐阅读

TXT中藏奥秘

· 2023-02-23 17:43:41