ÇëÉ÷ÓÃjavaµÄFile#renameTo(File)·½·¨
ÒÔÇ°ÎÒÒ»Ö±ÒÔΪFile#renameTo(File)·½·¨ÓëOSÏÂÃæµÄ move/mv ÃüÁîÊÇÏàͬµÄ£¬¿ÉÒÔ´ïµ½¸ÄÃû¡¢Òƶ¯ÎļþµÄÄ¿µÄ¡£²»¹ýºóÀ´¾³£·¢ÏÖÎÊÌ⣺File#renameTo(File)·½·¨»á·µ»Øʧ°Ü(false)£¬ÎļþûÓÐÒƶ¯£¬Óֲ鲻³öÔÒò£¬ÔÙºóÀ´¸É´àÆúÓø÷½·¨£¬×Ô¼ºÊµÏÖÒ»¸öcopy·½·¨£¬ÎÊÌâµ¹ÊÇÔÙҲûÓгöÏÖ¹ý¡£
×òÌìÀÏ°åͬѧÓÖÓöµ½Õâ¸öÎÊÌ⣬File#renameTo(File)·½·¨ÔÚwindowsÏÂÃ湤×÷µÄºÃºÃµÄ£¬ÔÚlinuxÏÂż¶ûÓÖʧÁéÁË¡£»Øµ½¼ÒÎÒɨÁËÒ»±éJDKÖÐFile#renameTo(File)·½·¨µÄÔ´´úÂ룬·¢ÏÖËüµ÷ÓõÄÊÇÒ»¸ö±¾µØµÄ·½·¨(native method)£¬ÎÞ·¨ÔÙ¸ú×ÙÏÂÈ¥¡£ÍøÉÏÓÐÈË˵¸Ã·½·¨ÔÚwindowÏÂÊÇÕý³£µÄ£¬ÔÚlinuxÏÂÃæÊDz»Õý³£µÄ¡£Õâ¸öºÜÄÑ˵ͨ£¬SUN²»¿ÉÄܸã³öÕâÖÖƽ̨²»Ò»ÖµĴúÂë³öÀ´°¡¡£
ºóÃæÔÚSUNµÄ¹Ù·½ÂÛ̳ÉÏ¿´µ½ÓÐÈËÌáµ½Õâ¸öÎÊÌâ“works on windows, don't work on linux”£¬ºóÃæÓÐÈ˻ظ´ËµÊÇ“file systems”²»Ò»Ñù¡£¾¿¾¹Ôõô²»Ò»ÑùÄØ£¿»¹ÊÇûÓÐÏë³öÀ´...
ºóÃæÔÚÒ»¸öÂÛ̳ÀïÃæ·¢ÏÖÁËijÈ˹ØÓÚÕâ¸öÎÊÌâµÄ²ûÊö£º
ÒýÓÃ
In the Unix'esque O/S's you cannot renameTo() across file systems. This behavior is different than the Unix "mv" command. When crossing file systems mv does a copy and delete which is what you'll have to do if this is the case.
The same thing would happen on Windows if you tried to renameTo a different drive, i.e. C: -> D:
ÖÕÓÚÃ÷°×¿©¡£
×ö¸öʵÑ飺
Java´úÂë
File sourceFile = new File("c:/test.txt");
File targetFile1 = new File("e:/test.txt");
File targetFile2 = new File("d:/test.txt");
System.out.println("source file is exist? " + sourceFile.exists()
+ ", source file => " + sourceFile);
System.out.println(targetFile1 + " is exist? " + targetFile1.exists());
System.out.println("rename to " + targetFile1 + " => "
+ sourceFile.renameTo(targetFile1));
System.out.pr
Ïà¹ØÎĵµ£º
2008 Äê 6 ÔÂ 24 ÈÕ
ÔÎĵØÖ·£º http://www.ibm.com/developerworks/cn/data/library/techarticles/dm-0806wangys/
±¾ÎĽéÉÜ IBM FileNet P8 4.0 Platform ÌṩµÄ Content Java API¡£Ê×ÏÈ¶Ô FileNet P8 Content Engine ºÍ API ½øÐиÅÒª½éÉÜ, ²¢ËµÃ÷ÁËһЩ»ù±¾¸ÅÄËæºóÏêϸ½éÉÜÁË FileNet Content EngineÌṩµÄ»ùÓÚ EJB ......
package com;
import java.util.HashMap;
import java.util.Map;
import java.util.regex.Pattern;
public class RegexUtil {
private static Pattern PATTERN_EMAIL = Pattern
.compile("^[\\w-]+(\\.[\\w-]+)*@[\\w-]+(\\.[\\w-]+)+$");// ÓʼþµØÖ·
private static Pattern PATTERN_TEL = Pattern
.compi ......
1.½Ó¿ÚµÄ·½·¨Ä¬È϶¼ÊÇpublic µÄ£¬·½·¨Ö»ÄÜÊÇpublic&abstract,·½·¨µÄʵÏÖ²»ÄÜСÓÚ½Ó¿Ú·½·¨µÄvisibality.
½Ó¿ÚÖеÄÓòĬÈÏÊÇpublic static finalµÄ¡£
Ò»¸öÀà¿ÉÒÔʵÏֺܶà¸ö½Ó¿Ú¡£
2.ÄÚ²¿Àà¾ßÓÐÍâΧÀࣨenclosing class£©µÄËùÓÐÔªËصķÃÎÊȨ¡£
3.ÄäÃûÀàÈç¹ûÏ£ÍûÊÇÓÐÒ»¸öÔÚÆäÍⲿ¶¨ÒåµÄ¶ÔÏó£¬ ......
1.1.1 ÐÞÁ¶µÚÒ»²ã¾³½ç£º½£Ö¸ËÄ·½£¬ÊÔÎÊÌìÏÂÓëÕù·æ
ÐÞÁ¶µÚÒ»²ã¾³½çµÄ³ÌÐòÔ±£¬¶ÔJava¿ª·¢¼¼Êõ¾¡ÊýÕÆÎÕ£¬¿ª·¢¹¤¾ßÕÆÎÕµÃÒ²½ÏΪæµÊì¡£¿ÉÒÔ½«µÚ¶þ²ã´Î³ÌÐòÔ±½»¸øµÄÈÎÎñÍê³ÉµÃºÜ³öÉ«£¬¿ÉÒÔ°´ÒªÇó¶ÀÁ¢Íê³ÉÀà¡¢½Ó¿ÚºÍËã·¨µÄ¿ª·¢¡£×¢Öؼ¼ÇÉ£¬¶Ô¾ßÌåµÄ±à³ÌÓïÑԷdz£ÊìϤ¡£
ÄÜÁ¦Ö®Ëù¼°£¬½ÔÎÞ²»ÓÃÆ伫¡£ÈÏΪËùÓпª·¢ÖªÊ¶£¬Ô½ÊÇ¿´Æ ......
ʹÓÃÏÂÃæ¼òµ¥µÄJava³ÌÐò²âÊÔÃüÁîÐвÎÊý¸ñʽ¡£
public class Test {
public static void main(String[] args) {
for (int i = 0; i < args.length; i++) {
System.out.println(args[i].length() + ":" + args[i]);
}
}
}
±àÒëºó´ò¿ªcmdÃüÁîÌáʾ·ûÊäÈëÈçÏÂÃüÁî²¢²é¿´½á¹û£º
java Test a aa ......