File.rename操作后,获取文件的名称,输出的名称仍为之前的名称

  1. package cn.itcast.struts2.test;
  2. import java.io.File;
  3. import java.io.IOException;
  4. public class FileTest {
  5.     public static void main(String[] args) throws IOException {
  6.         File oldfile=new File("E:\\a.txt");
  7.         File newfile=new File("F:\\b.txt");
  8.         if(!oldfile.exists()){
  9.             oldfile.createNewFile();
  10.         }
  11.         oldfile.renameTo(newfile);
  12.         System.out.println(oldfile.getName());
  13.     }
  14. }

输出 a.txt

原因分析:oldfile.renameTo()这个方法是对windows本地文件进行操作,而oldfile.getName()是获取在缓存中oldfile对象的名称,故仍为a.text

 

posted @ 2016-03-12 00:09  Lanyuxuan  阅读(394)  评论(0编辑  收藏  举报