Java语言程序设计(二十四)文件类File的创建与输入
存储在变量,数组和对象中的数据是暂时的,当程序终止时它们就会丢失。为了能够永久地保存程序中创建的数据,需要将它们存储到磁盘或光盘上的文件中。这些文件可以传送,也可以随后被其他程序使用。
在文件系统中,每个文件都存放在一个目录下。绝对文件名是由文件名和它的完整路径以及驱动器字母组成,例如,c:\book\Welcome.java是文件Welcome.java在Windows操作系统上的绝对文件名。这里的c:\book称为该文件的目录路径.
File类包含许多获取文件属性的方法以及重命名和删除文件的方法,但是File类不包含读写文件内容的方法,在程序中,不要直接使用绝对文件名,否则可能会造成只能在windows上工作,但是不能再其他平台工作,应该使用与当前目录相关的文件名。
1.文件输入与输出
File对象封装了文件或路径的属性,但是它既不包括创建文件,也不包括从文件读数据的方法,为了完成I/O操作,需要使用恰当的java I/O类创建对象。
(1)使用PrintWriter写数据
java.io.PrintWriter可用来创建一个文件并向文本文件写入数据,首先,必须为一个文本文件创建一个PrintWriter对象,如下所示:
PrintWriter output = new PrintWriter(filename);
然后可以调用PrintWriter对象上的print,println和printf方法向文件写入数据,我们下面创建一个PrintWriter实例并且向文件中写入两行数据的例子,程序清单如下:
package writedata
/**
*
* @author john
*/
public class Writedata {
/**
* @param args the command line arguments
*/
public static void main(String[] args)throws Exception {
// TODO code application logic here
java.io.File file = new java.io.File("scorex.txt");
if(file.exists()){
System.out.println("File already exists");
System.exit(0);
}
java.io.PrintWriter output = new java.io.PrintWriter(file);
output.print("John T Smith");
output.println(90);
output.print("Eric K Jones");
output.println(85);
output.close();
}
}
我们首先检查score.txt文件是否存在,如果存在,则退出该程序,如果文件不存在,调用PrintWriter的构造方法会创建一个新文件,调用这种方法可能会抛出某种I/O异常,我们可以再方法头中声明throws Exception即可,之后我们必须用close()方法关闭文件,如果没有调用该方法,数据就不能正确地保存在文件中。
至于我们新创建的txt文件在哪里,就在我们创建java程序的时候,代码包所存在的位置,也可以通过控制台索引全局查找得到。
- 【Java】-- 输入/ 输出:探究java.io の File(文件类)
- 11.1.2 文件类File创建文件
- Java IO流 之 File 文件类
- 从键盘上输入文件的内容和要保存的文件名称,然后根据输入的名称创建文件,并将内容保存到文件中
- 由前序遍历序列跟中序遍历序列生成二叉树,如果输入序列不正确返回fail~ 如果正确则前序遍历创建的二叉树
- 【HAVENT原创】创建 Dockerfile 生成新的镜像,并发布到 DockerHub
- How to create a zip file in NetSuite SuiteScript 2.0 如何在现有SuiteScript中创建和下载ZIP压缩文档
- cocoaPod的Podfile文件的创建和内容格式
- C#文件监控对象FileSystemWatcher实例,文件创建,修改,删除,重命名等
- 无法创建.gitignore文件,提示必须输入文件名称
- Java的文件类File和递归(笔试的常见题)
- 使用.INI文件为输入界面创建“动态帮助” 选择自 trnbo 的 Blog
- 编写一个程序,可以通过次程序完成一个表的创建操作,输入表的名称,各个列的名称及类型,输入完成后直接通过JDBC创建指定的表。
- "文件中的备份集是由BACKUP DATABASE...FILE=创建的,无法用于此还原操作"的解决办法
- Navicat Premium 创建查询时报“cannot create file ……系统找不到指定的路径”
- 使用Dockerfile创建docker镜像
- Java文件字节输入流(FileInputSream)文件字节输出流(OutputStream),字符输入输出流(FileReader/FileWriter)
- File文件读取与输入输出流
- File文件类
- centos7下安装docker(3.3创建镜像--修改dockerfile)