【问题标题】:C++: Text File's Extensions? [closed]C++:文本文件的扩展名? [关闭]
【发布时间】:2012-09-02 16:19:37
【问题描述】:

当我使用fstream文件流使用文本文件进行输入和输出时,使用的文件扩展名是.txt

我见过有人用.txt代替:

他们使用.DAT,但仍然在文本编辑器中打开它,就好像它是一个文本文件一样。

DAT 也是文本文件扩展名,我可以对文本文件使用哪些扩展名?

【问题讨论】:

  • anything 可以用作任何类型文件的文件扩展名。文本文件也是文件。

标签: c++ text fstream


【解决方案1】:

简短的回答:文本文件可以有任何你想要的扩展名,包括没有扩展名。如果您愿意,可以使用 somefile.txt 并将其重命名为 somefile.XYZPDQ。它仍然是一个文本文件。

这是从纯 C++ 语言的角度来看的。在操作系统级别,文件扩展名可能与某种程序类型相关联(例如,您可能在视频播放器中打开了 .mp4 视频)。但是您仍然可以随意调用任何文本文件。没有什么能阻止你这样做。

【讨论】:

    【解决方案2】:

    扩展名只是文件名的一部分。您使用DATTXT 的扩展名没有区别。我的意思是,扩展有助于人们识别文件类型,但仅限于人们。

    【讨论】:

      【解决方案3】:

      你可以使用任何扩展,但是:

      • 使用.txt,您通常会提示该文件可以在文本编辑器(如 vim 或记事本)中打开并且可供人类阅读
      • 使用.dat,您通常会提示该文件是二进制,无法使用文本编辑器打开。应该使用特殊程序(也许是你的;)或十六进制二进制编辑器,其内容不易阅读或修改。
      • 您可以使用的另一个常见扩展名是.csv 用于逗号分隔值文件(即使不使用逗号而是使用制表符或其他任何内容),可以在文本编辑器或 Excel 的 openoffice 等电子表格应用程序中打开.
      • Windows 用户经常使用.ini 扩展名来暗示该文件是一个文本文件(可在文本编辑器中查看),其中包含一些键/值参数,例如ConfirmBeforeExit=true。通过扩展,它可用于任何包含参数的文本文件。
      • 另一个是.log,暗示该文件是一个文本文件,包含执行某事的日志。然后,Linux 用户将在应用程序运行时立即发送tail -f foo.log 以查找问题。

      顺便说一句,使用 TXT 或 DAT 等大写扩展名是对旧 DOS 时代的一种提醒,现在被认为是不好的风格。只需使用小写即可。

      【讨论】:

        【解决方案4】:

        您可以使用任何扩展名,因为这无关紧要。 .dat 扩展名通常用于二进制数据,因此对于您的程序的用户来说,它实际上是一个可编辑的文本文件可能并不明显。

        【讨论】:

          【解决方案5】:

          扩展名对您可以放入文件中的数据类型没有影响。例如,您可以使用TXTDAT,甚至(不推荐)EXE。最好坚持一个扩展。如果某些内容是要被人类阅读的,我会使用TXT,但DAT 或类似的东西表示不同。

          【讨论】:

            猜你喜欢
            • 1970-01-01
            • 1970-01-01
            • 2020-09-12
            • 1970-01-01
            • 2013-11-03
            • 1970-01-01
            • 1970-01-01
            • 2013-06-17
            • 2017-03-04
            相关资源
            最近更新 更多