A. 文件夾一重命名就顯示「操作無法完成 因為其中文件夾或文件已在另一程序中打開」是為什麼我沒有打
文件夾一重命名就顯示「操作無法完成 因為其中文件夾或文件已在另一程序中打開」是重命名錯誤造成的,解決方法為:
1、首先需要右擊任務欄,點擊啟動管理器,如圖所示。
B. 求java高手幫忙,在文件重命名和提前最後修改時間時為什麼不對
前面的,都是目錄的時間
import java.io.File;
import java.util.Date;
import java.io.IOException;
public class FileDemo1 {
public static void main(String args[]){
File path=new File(".");
path.mkdirs();
File file=new File(path,"myfile.txt");
if(file.exists()){
file.delete();
}
try {
file.createNewFile();
file=new File(file.getName());
} catch (IOException e2){
e2.printStackTrace();
}
System.out.println("文件的名字是:"+file.getName());
System.out.println("文件myfile.txt的絕對路徑是:"+file.getAbsolutePath());
System.out.println("文件是否可讀: "+(file.canRead()?"可讀":"不可讀"));
System.out.println("文件是否是目錄: "+(file.isDirectory()?"是目錄":"不是目錄"));
System.out.println("文件最後修改時間:"+new Date(file.lastModified()));
if(file.renameTo(new File("myfile.java"))){
System.out.println("文件名修改成功!");
System.out.println("文件的名字是:"+file.getName());
}else{
System.out.println("文件重命名失敗!");
}
Long time=file.lastModified()-200*60*60*1000;
file.setLastModified(time);
System.out.println("文件最後修改時間提前200小時後為:"+new Date(file.lastModified()));
}
}
寫代碼,要合理簡潔
C. linux 下 java 的File類的renameTo()方法 不能重命名文件
1--.linux文件系統也有絕對路徑,從根目錄開始的。
當然你也可以讀相對路徑,./表示回當前路徑,..表示上一級路徑。答
2--.首先路徑寫對的話,剩下的就是許可權問題了,你先看下你是否對此文件有修改許可權,chmod u+x fileName試下
3--.是否重名了
D. java改了下文件名就不行了
想要獲得改過之後的文件名,必須重新新建file文件對象,示例如下:
import java.io.*;
public class ReNameFile
{
public static void main(String[] args)
{
String file="E:/a/d.txt";// /不會出現不兼容問題
File path=new File(file);//新建一個file對象
try
{
if(!path.exists())
path.createNewFile();
}
catch(IOException e)//捕捉異常
{
System.out.println(e);
}
String pa=path.getPath();//得到文件路徑
String filePath = pa.substring(0, pa.lastIndexOf("\\")); //獲得上層路徑
File newfile=new File(filePath+"\\qqq");//想要輸出修改過後的文件名及全路徑,要新建一個File對象
path.renameTo(newfile);//更改新路徑
System.out.println("path.getName:"+path.getName()+" "+newfile.getName());
System.out.println("path.getPath:"+path.getPath()+" "+newfile.getPath());
}
}
E. JAVA文件重命名怎麼要2次才成功
不過既然是用java,java的最大優點是跨平台,為何不用平台無關的方式去處理文件復制呢(雖然輸入輸出流代碼多了幾行),還有renameTo方法用的時候小心,如果sourcePath與destPath所在分區類型不一致時可能會有問題.
我測試過了,沒有問題,問題可能出在您的delAllFile方法中
package databackup;
import java.io.File;
import java.io.IOException;
public class DataBackup {
/**
* @param args
*/
public static void main(String[] args) {
String sourcePath = "D:\\Temp\\";
try {
// 源路徑
String strDataBaseFilePath = sourcePath + "data\\CYSystem.mdb";
// dest路徑
String strBackupDataBaseFilePath = sourcePath + "save\\";
delAllFile(strBackupDataBaseFilePath);
// 如果沒有正常清空 備份文件夾的話,有可能重命名不成功.
try {
Process process= Runtime.getRuntime().exec(
"cmd.exe /c start /b " + strDataBaseFilePath + " "
+ strBackupDataBaseFilePath);
process.waitFor();
} catch (Exception e) {
System.out.println(e);
}
// create filename
java.util.Calendar now = java.util.Calendar.getInstance();
java.text.SimpleDateFormat yearAndMonth = new java.text.SimpleDateFormat(
"yyyy-MM-dd");
String retString = yearAndMonth.format(now.getTime());
File file = new File(strBackupDataBaseFilePath + "CYSystem.mdb");
file.renameTo(new File(strBackupDataBaseFilePath + retString
+ ".mdb"));
} catch (Exception ex) {
ex.getStackTrace();
}
System.out.println("備份成功!");
}
public static void delAllFile(String path) {
try {
Process process=Runtime.getRuntime().exec(
"cmd.exe /c start /b del " + path +" "+"/q");
process.waitFor();
} catch (IOException e) {
// TODO 自動生成 catch 塊
e.printStackTrace();
} catch (InterruptedException e) {
// TODO 自動生成 catch 塊
e.printStackTrace();
}
}
}
F. java對Excel文件重命名錯誤,我使用File的renameto 方法,但是返回false,求幫忙看看吧!
任何文件都是可以重命名的,你應該看看你的excel是不是打開了,你要是打開excel就算手動也不可能重命名,還有s1和s是同一個文件夾嗎