操作文件的类-----File

File类中的主要方法
public static final String pathSeparator 表示路径的分隔符(windows是:";")
public static final String separator 表示路径的分隔符(windows是:"\")
public File(String pathname)   创建File类对象,传入完整路径
public boolean creatNewFile() throws IOException 创建新文件
public boolean delete() 删除文件
public boolean exists() 判断文件是否存在
public boolean isDirectory() 判断给定的路径是否是一个目录
public long length() 返回文件的大小
public String[] list() 列出指定目录的全部内容,只是列出了名称
public File[] listFiles() 列出指定目录的全部内容,会列出路径
public boolean mkdir() 创建一个目录
public boolean renameTo(File dest) 为已有的文件重新命名
(1)Windows中使用反斜杠表示目录的分隔符"\"
(2)Linux中使用正斜杠表示目录的分隔符"/"

(3)在操作文件时一定要使用File.separator表示分割符,在程序的开发中,往往会使用Windows开发环境,而在程序发布时往往是直接在Linux或者其他操作系统上部署

例如:"d:\\test.txt"   可以写成"d:"+File.separator+"test.txt"

public class Demo1 {
	public static void main(String[] args) {
		String path = "d:"+File.separator+"demo.txt";
		File file = new File(path);
		if (file.exists()) {
			file.delete();
			System.out.println("删除成功!");
		} else {
			try {
				file.createNewFile();
			} catch (IOException e) {
				// TODO Auto-generated catch block
				e.printStackTrace();
			}
			System.out.println("新建成功!");	
		}
	}
}


列出指定目录的全部内容:

public class Demo2 {
	public static void print(File file) {
		if(file!=null){
			if (file.isDirectory()) {
				File[] listFiles = file.listFiles();
				if(listFiles != null) {
					for (int i = 0; i < listFiles.length; i++) {
						print(listFiles[i]);
					}			
				} else {
					System.out.println(file);
				}
			}
		}
	}
	public static void main(String[] args) {
		File file = new File("d:"+File.separator+"fff");
		print(file);
	}
}


2.RandomAccessFile类

File类只是针对文件本身进行操作,而如果要对文件内容进行操作,则可以使用RandomAccessFile类,此类属于随机读取类,可以随机读取一个文件中指定位置的数据。
RandomAccessFile类的常用操作方法:
public RandomAccessFile(File file,String mode) throws FileNotFoundException            构造函数,接受File类的对象,指定操作路径,但是在设置时需要设置模式,r为只读,w为只写,rw为读写
public RandomAccessFile(String name,String mode)throws FileNotFoundException           构造函数,不再使用File类对象表示文件,而是直接输入了一个固定的文件路径
public void close() throws IOException                                                 关闭操作
public int read(byte[] b)throws IOException 将内容读取到一个byte数组中
public final byte readByte()throws IOException 读取一个字节
public final int readInt()throws IOException 从文件中读取整型数据
public void seek(long pos)throws IOException 设置读指针的位置
public final void writeBytes(String s)throws IOException 将一个字符串写入到文件中,按字节的方式处理
public final void writeInt(int v)throws IOException 将一个int型数据写入文件,长度为4位
public int skipBytes(int n) throws IOException 指针跳过多少字节
需要注意的是,如果使用rw方式声明RandomAccessFile对象时,要写入的文件不存在,系统将自动进行创建。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值