io系列之其他类
一、File类:将文件或者文件夹封装成对象。
方便对文件和文件夹的属性信息进行操作。
File对象可以作为参数传递给流的构造函数。
注意: 文件夹名称也可带有扩展名。
构造函数:
File(String pathname) 通过将给定路径名字符串转换为抽象路径名来创建一个新 File 实例。
如: File f1 = new File("c:\\abc\\a.txt");
或:File f1 = new File("a.txt");
File(String parent, String child) 根据 parent 路径名字符串和 child 路径名字符串创建一个新 File 实例
如: File f2 = new File("c:\\abc","b.txt");
File(File parent, String child) 根据 parent 抽象路径名和 child 路径名字符串创建一个新 File 实例
如: File d = new File("d:\\abc");
File f3 = new File(d,"c.txt");
目录分割符: tatic String separator 与系统有关的默认名称分隔符,为了方便,它被表示为一个字符串。
作用 : 为了解决路径名称字符串中的“\\”不具有跨操作系统平台性的问题。
如:"c:\\abc\\a.txt" 可以改写为: "c:"+File.separator+"abc"+File.separator+"a.txt" 。
其它方法:
1、创建:
boolean createNewFile() 在调用的对象指定路径下不存在指定文件时,创建这个文件,并返回true,否则返回false。
boolean mkdir() 创建此抽象路径名指定的目录,如果目录已存在,则不创建,返回false(只能创建一级目录)。
boolean mkdirs()创建此抽象路径名指定的目录,如果目录已存在,则不创建,返回false(可以创建多级目的)。
2、删除:
boolean delete() 在调用的对象指定路径下存在指定文件时,删除这个文件,并返回true,否则返回false。
void deleteOneExit() 在虚拟机退出的时候,删除调用对象指定路径下的文件。
3、判断:
boolean exists() 测试此抽象路径名表示的文件或目录是否存在。存在就返回true, 否则返回false。
boolean isDirectory() 测试此抽象路径名表示的文件是否是一个目录。
boolean isFile() 测试此抽象路径名表示的文件是否是一个标准文件。
注意:在需要判断文件对象是文件还是目录时,必须先判断该文件对象封装的内容是否存在。!!
boolean isHidden() 测试此文件是否为一个隐藏文件。
boolean isAbsolute() 测试此抽象路径名是否为绝对路径名。
boolean canExecute() 判断该路径对应文件是否问可执行文件,可执行返回true,否则返回false。
boolean canRead() 测试应用程序是否可以读取此抽象路径名表示的文件。
boolean canWrite() 测试应用程序是否可以修改此抽象路径名表示的文件。
4、获取:
String getName() 返回由该File对象锁表示的的文件或者文件夹的名称(只是名字)。
String getPath()返回此File对象创建时传入的路径。
String getAbsolutePath()返回此File对象表示文件或文件夹的绝对路径。
File getAbsolutePath()返回此File对象表示文件或文件夹的绝对路径(该路径被封装成File对象)。
String getParent()返回此File对象表示的父目录(该父目录只是建立File对象时传入的路径上的父目录)。
long lastModified() 返回此File对象所表示文件或文件夹最后一次被修改的时间。
long length() 返回由此抽象路径名表示的文件的长度。(即 大小)。
boolean renameTo(File dest) 为File对象指定文件改名字(路径也可以改,类似剪切并改名)
5、List方法:
Static File[] listRoots() 列出可用的系统根目录(如:c/d/e/f盘)
String[] list() 返回一个字符串数组,这些字符串指定此抽象路径名表示的目录中的文件和目录
String[] list(FilenameFilter filter) 返回一个字符串数组,这些字符串指定此抽象路径名表示的目录中满足指定过滤器的文件和目录
(包含隐藏文件,且调用该方法的File对象封装的是一个存在的目录,是文件就会返回空)
File[] listFiles() 返回一个抽象路径名数组,这些路径名表示此抽象路径名表示的目录中的文件。
File[] listFiles(FileFilter filter) 返回抽象路径名数组,这些路径名表示此抽象路径名表示的目录中满足指定过滤器的文件和目录。
File[] listFiles(FilenameFilter filter) 返回抽象路径名数组,这些路径名表示此抽象路径名表示的目录中满足指定过滤器的文件和目录。
这其中的FilenameFilter是过滤器, 要另外新建(实现FilenameFilter接口的类,只有一个方法,一般匿名内部类)
二、Propperties类
Properties是HashTable的子类,就是说其具有Map集合的特点,而且其中存储的键值对都是字符串。
我们可以使用Map集合的共有方法(keySet,或者entrySet等方法),也可以使用其特有的方法来操作数据。
因为Properties是一个与IO技术相结合的容器,所以我们一般使用其特有的方法类操作数据。
作用: 可以用于键值对形式的配置文件。(所以我们在加载数据的时候就要有固定的格式: 键 = 值 )。
String getProperty(String key) 用指定的键在此属性列表中搜索属性。
String getProperty(String key, String defaultValue) 用指定的键在属性列表中搜索属性。
void list(PrintStream out) 将属性列表输出到指定的输出流。
void list(PrintWriter out) 将属性列表输出到指定的输出流。
void load(InputStream inStream) 从输入流中读取属性列表(键和元素对)。
void load(Reader reader) 按简单的面向行的格式从输入字符流中读取属性列表(键和元素对)。
void |
store(Writer writer, String comments) 以适合使用 load(Reader) 方法的格式,将此 Properties 表中的属性列表(键和元素对)写入输出字符。 |
void |
store(OutputStream out, String comments) 以适合使用 load(InputStream) 方法加载到 Properties 表中的格式,将此 Properties 表中的属性列表(键和元素对)写入输出流。 |
io系列之其他类的更多相关文章
- Java基础复习笔记系列 五 常用类
Java基础复习笔记系列之 常用类 1.String类介绍. 首先看类所属的包:java.lang.String类. 再看它的构造方法: 2. String s1 = “hello”: String ...
- java io系列01之 "目录"
java io 系列目录如下: 01. java io系列01之 "目录" 02. java io系列02之 ByteArrayInputStream的简介,源码分析和示例(包括 ...
- java io系列06之 序列化总结(Serializable 和 Externalizable)
本章,我们对序列化进行深入的学习和探讨.学习内容,包括序列化的作用.用途.用法,以及对实现序列化的2种方式Serializable和Externalizable的深入研究. 转载请注明出处:http: ...
- Java IO系列之一:IO
1. 概述 Java IO一般包含两个部分: 1.java.io包中堵塞型IO: 2.java.nio包中的非堵塞型IO,通常称为New IO. java.io包下,分为四大块近80个类: 1.基于字 ...
- io系列之字符流
java中io流系统庞大,知识点众多,作为小白通过五天的视频书籍学习后,总结了io系列的随笔,以便将来复习查看. 本篇为此系列随笔的第一篇:io系列之字符流. IO流 :对数据的传输流向进行操作,ja ...
- java io系列02之 ByteArrayInputStream的简介,源码分析和示例(包括InputStream)
我们以ByteArrayInputStream,拉开对字节类型的“输入流”的学习序幕.本章,我们会先对ByteArrayInputStream进行介绍,然后深入了解一下它的源码,最后通过示例来掌握它的 ...
- java io系列04之 管道(PipedOutputStream和PipedInputStream)的简介,源码分析和示例
本章,我们对java 管道进行学习. 转载请注明出处:http://www.cnblogs.com/skywang12345/p/io_04.html java 管道介绍 在java中,PipedOu ...
- java io系列05之 ObjectInputStream 和 ObjectOutputStream
本章,我们学习ObjectInputStream 和 ObjectOutputStream ObjectInputStream 和 ObjectOutputStream 介绍 ObjectInputS ...
- java io系列20之 PipedReader和PipedWriter
本章,我们学习PipedReader和PipedWriter.它们和“PipedInputStream和PipedOutputStream”一样,都可以用于管道通信. PipedWriter 是字符管 ...
随机推荐
- elasticsearch介绍,安装,安装错误解决及相应插件安装
一.elasticsearch介绍 1.简介(使用的是nosql,更新比mongodb慢): ElasticSearch是一个基于Lucene的搜索服务器.它提供了一个分布式多用户能力的全文搜索引擎, ...
- /proc/diskstats
读取磁盘统计信息,如下所示: linux-HpdBKE:~ # cat /proc/diskstats sda sda1 sda2 dm- dm- dm- sda为整个硬盘的统计信息,sda1为第一个 ...
- python django 的环境搭建(centos)
一.安装好nginx 二.安装uwsgi yum install python-devel -y pip3 install uwsgi #测试启动django /usr/local/python3/b ...
- mobile adaptor & css media query
mobile adaptor & css media query 移动端适配 & 媒体查询 http://cssmediaqueries.com/ device-aspect-rati ...
- faster rcnn
模型下载 https://github.com/rbgirshick/py-faster-rcnn/issues/542
- How to write to an event log by using Visual C#
using System; using System.Diagnostics; namespace WriteToAnEventLog_csharp { /// Summary description ...
- CF980E
题面 Panel 国将举办名为数字游戏的年度表演.每个省派出一名选手. 国家有 n 个编号从 1 到 n 的省,每个省刚好有一条路径将其与其他省相连.第 i 个省出来的代表有 2^i 名粉丝. 今年, ...
- Qt5 入门
main()函数中第一句是创建一个QApplication类的实例. 对于 Qt 程序来说,main()函数一般以创建 application 对象(GUI 程序是QApplication,非 GUI ...
- [Codeforces757G]Can Bash Save the Day?——动态点分治(可持久化点分树)
题目链接: Codeforces757G 题目大意:给出一棵n个点的树及一个1~n的排列pi,边有边权,有q次操作: 1 l r x 求 $\sum\limits_{i=l}^{r}dis(p_{i} ...
- python中的split()方法的使用
Python split()方法:通过指定分隔符对字符串进行分割并返回一个列表,默认分隔符为所有空字符,包括空格.换行(\n).制表符(\t)等. l Str.split()默认以空格,换行\n,制 ...