------- android培训、java培训、期待与您交流! ----------
1:File(重点)
(1)File类用来操作文件和文件夹的。
把文件和文件夹封装成了一个对象。
(2)File的构造方法:
A:File(String pathName):根据指定的路径创建文件的实例
**File f = new File("c:\\a.txt");
B:File(String parent,String child):根据指定的父目录和子目录创建文件的实例
**File f = new File("c:\\","a.txt");
C:File(File parent,String child):根据指定的父文件目录和子目录创建文件的实例。
**File f = new File("c:\\");
File f2 = new File(f,"a.txt");
(3)功能方法:
A:创建文件和文件夹:
createNewFile():创建文件
mkdir():创建单级目录
mkdirs():创建多级目录
B:删除
delete():删除文件和文件夹(文件夹内有东西的,先删除里面内容,最后删除文件夹)
C:判断
canExecute():判断是否是可执行文件.文件不存在,多个用户间的使用(自己测试)。
canRead():判断是否可读
canWrite():判断是否可写
boolean isDirectory():判断是否是一个目录
boolean isFile():判断是否是文件
boolean isHidden():判断是否是隐藏文件
D:获取
String getAbsolutePath():绝对路径
String getPath():相对路径
String getName():获取文件的名字
String getParent():获取父目录
long length():返回的是文件的长度(字节)
E:获取
static File[] listRoots():列出可用的文件系统根。
String[] list():返回某个目录下的所有文件或者文件夹的名称
File[] listFiles():返回的是某个目录下所有的文件或者文件夹的对象
String[] list(FilenameFilter filter):返回某个目录下的所有未被过滤掉的文件或者文件夹的名称
File[] listFiles(FilenameFilter filter):返回的是某个目录下所有未被过滤掉的文件或者文件夹的对象
文件名的过滤器:FilenameFilter
File file = new File("d:\\itcast\\20120725");
String[] strArray = file.list(new FilenameFilter(){
@Override
public boolean accept(File dir,String name)
{
return name.endsWith(".java")
}
});
for(String str : strArray)
{
sop(str);
}
(4)成员
路径分隔符:File.separator
2:递归
(1)方法在方法调用本身的形式
(2)求阶乘
求5!
public int jc(int n)
{
if(n==1)
{
return 1;
}
else
{
return n*jc(n-1);
}
}
(3)求裴波那切数列
1,1,2,3,5,8,...
public int dg(int n)
{
if(n==1 || n==2)
{
return 1;
}
else
{
return dg(n-1)+dg(n-2);
}
}
(4)递归使用的注意事项:
A:注意循环的次数不要过多。
B:注意要有递归出口(循环结束条件)。
C:能使用循环的就不使用递归。
(5)常见的使用递归的场景
A:文件的遍历
B:树的遍历
3:递归在File中的应用(重点)
A:获取某个目录下所有的文件和文件夹
B:删除某个目录
C:把指定目录下的指定后缀的文件的绝对路径写入到一个文本文件中
4:Properties类的使用(次重点)
(1)是Map下Hashtable的子类。所以,它具有键值对的特点。
(2)特殊功能:
A:list 可以通过PrintStream这样的流把数据写到目的地
B:load 可以把键值对形式的文件内容加载到Properties集合对象中
C:store 把Properties集合对象中的数据,保存到一个文件中。
1:编码解码问题
A:转换流可以实现编码的指定。
B:String的编码和解码
ISO-8859-1
GBK
UTF-8
2:几个需要掌握的流
A:ObjectInputStream/ObjectOutputStream
B:ByteArrayInputStream/ByteArrayOutputStream
CharArrayReader/CharArrayWriter
C:PrintWriter/PrintStream
3:几个需要了解的流的操作
A:合并多个流进行读取
B:切割图片,合并图片
C:管道流 通过多线程操作