java - 当我们创建没有扩展名的新文件时,会创建什么类型的文件?

标签 java file operating-system

在java中,当我们创建文件时,我们使用扩展名创建文件。 例如:

File file = new File("D:/light.txt");

我想知道当我们创建一个没有文件扩展名类型的文件时,我们得到的是什么类型的文件格式。 例如:

File file = new File("D:/light");

最佳答案

这个答案假设您所做的不仅仅是创建一个 File 对象——您实际上是在文件系统上创建一个文件。 (File 对象只是文件系统条目的逻辑表示,它可能存在也可能不存在。)如果您真的只是创建一个File 对象,阅读 EJP 的回答 - 到那时,您基本上 只是 有了一个名字。它没有“类型”或“格式”。

扩展名只是名称的一部分。操作系统可能尝试使用它来显示不同的图标,或者在您双击图标时启动特定的应用程序,或其他任何东西 - 但它实际上只是名称的一部分。

从根本上说,一个文件包括:

  • 创建时指定的名称
  • 你写入的字节数
  • 访问控制等元数据

除非您有意添加元数据,否则它通常只是继承的(默认权限等)。

您可以在任何文件中写入任何数据 - 仅仅因为文件的扩展名为 .txt 并不意味着它绝对是文本文件。例如,它可能包含 实际上 MP3 编码音频数据的内容。操作系统是使用文件扩展名还是内容来确定如何处理文件取决于操作系统。

关于java - 当我们创建没有扩展名的新文件时,会创建什么类型的文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37130137/

相关文章:

java - 一次性密码安全风险

c - 用 C 将条目写入文件的结构数组中

java - 比较java中不同语言环境的2个文本文件

C#写多行到cs文件

operating-system - 页表条目中的 User/Supervisor 位是什么意思?

java - Android:以编程方式设置复选框将文本位置设置在右侧

java - Spring MVC Hibernate MySQL - 少1天进入数据库

java - 如何读取 Java Spring MVC 应用程序中的属性(或任何其他文本)文件?

c - 多次读取未初始化的值是否总是会给出相同的值?

data-structures - 用于构建文件系统的数据结构?