黑马程序员日记-18

------- 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:管道流 通过多线程操作

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值