Java文件后缀名是.java,它是一种用于开发和部署Web应用程序的面向对象的高级编程语言。它是由Sun Microsystems公司于1995年发布的,并在2010年被Oracle公司收购。Java文件后缀名.java表明这是一个Java源代码文件,它包含了使用Java语言写成的源代码。
Java文件后缀名.java的文件中包含了一个或多个Java语言源代码,这些源代码将会在运行时被JVM(Java虚拟机)加载和执行。JVM会将这些源代码中的字节代码加载到内存中,然后执行它们。
要使用Java语言开发应用程序,必须先将源代码保存到一个.java文件中。然后使用javac命令来将这个.java文件中的源代码进行“ 编译” (即将其源代码转化成字节代码) 。最后使用java命令来执行这个字节代码文件。
javac HelloWorld.java // 生成HelloWorld.class 字节代码文件 java HelloWorld // 执行HelloWorld.class 字节代Java 文件
Java IO教程 - Java文件
File类的对象是文件或目录的路径名的抽象表示。
创建文件
我们可以从中创建一个
File
对象
- 路径名
- 父路径名和子路径名
- URI(统一资源标识符)
我们可以使用File类的以下构造函数之一创建一个文件:
File(String pathname) File(File parent, String child) File(String parent, String child) File(URI uri)如果我们有一个文件路径名字符串test.txt,我们可以创建一个抽象路径名作为下面的代码。
File dummyFile = new File("test.txt");名为test.txt的文件不必存在,以使用此语句创建File对象。
dummyFile对象表示抽象路径名,它可能指向或可能不指向文件系统中的真实文件。
File类有几个方法来处理文件和目录。
使用File对象,我们可以创建新文件,删除现有文件,重命名文件,更改文件的权限等。
File类中的isFile()和isDirectory()告诉File对象是否表示文件或目录。
当前工作目录
JVM的当前工作目录是根据我们如何运行java命令来设置的。
我们可以通过读取user.dir系统属性来获取JVM的当前工作目录,如下所示:
String workingDir = System.getProperty("user.dir");使用System.setProperty()方法更改当前工作目录。
System.setProperty("user.dir", "C:myDir");要在Windows上指定C: test作为user.dir系统属性值,我们运行如下所示的程序:
java -Duser.dir=C:test your-java-class文件的存在
我们可以使用File类的exists()方法检查File对象的抽象路径名是否存在。
boolean fileExists = dummyFile.exists();完整源代码
import java.io.File; public class Main { public static void main(String[] argv) { // Create a File object File dummyFile = new File("dummy.txt"); // Check for the file"s existence boolean fileExists = dummyFile.exists(); if (fileExists) { System.out.println("The dummy.txt file exists."); } else { System.out.println("The dummy.txt file does not exist."); } } }上面的代码生成以下结果。
路径
绝对路径在文件系统上唯一标识文件。规范路径是唯一标识文件系统上文件的最简单路径。
我们可以使用getAbsolutePath()和getCanonicalPath()方法来分别获得由File对象表示的绝对路径和规范路径。
import java.io.File; import java.io.IOException; public class Main { public static void main(String[] args) { printFilePath("dummy.txt"); printFilePath(".." + File.separator + "notes.txt"); } public static void printFilePath(String pathname) { File f = new File(pathname); System.out.println("File Name: " + f.getName()); System.out.println("File exists: " + f.exists()); System.out.println("Absolute Path: " + f.getAbsolutePath()); try { System.out.println("Canonical Path: " + f.getCanonicalPath()); } catch (IOException e) { e.printStackTrace(); } } }上面的代码生成以下结果。
文件分隔符
不同的操作系统使用不同的字符来分隔路径名中的两个部分。
例如,Windows在路径名中使用反斜杠()作为名称分隔符,而UNIX使用正斜杠(/)。
File类定义了一个名为分隔符Char的常量,它是系统相关的名称分隔符。
我们可以使用File.separator Char常量来获取名称分隔符作为字符。
File.separator
常量将我们的名称分隔符作为String。在程序中使用名称分隔符将使您的Java代码在不同的平台上工作。
Java IO教程 -Java文件 java.nio.file.Files 包含所有允许我们对Path对象执行大多数文件操作的静态方法。创建新文件文件可以创建...
Java IO教程 -Java Jar清单清单文件JAR文件可以可选地在META-INF目录中包含名为MANIFEST.MF的清单文件。清单文件包含有关JAR文件...
Java IO教程 - Java缓冲输入流BufferedInputStream通过缓冲数据向输入流添加功能。它维护一个内部缓冲区以存储从底层输入流读取...
JavaFX教程 -JavaFX分页分页控件用于浏览多个页面。 我们典型地使用对网页的分页控制,例如博客。 在博客页面的底部,我们可以看...