2011-02-01 3 views
0
File file= new File("C:\\Documents and Settings\\Administrator\\Desktop\\ajay\\abc.csv"); 
Timestamp ts=new Timestamp(new Date().getTime()); 
String str= ts.toString(); 
String st="C:\\Documents and Settings\\Administrator\\Desktop\\ajay\\abc\\"+str+".csv"; 
System.out.println(new Date().getTime()); 
boolean b=file.renameTo(new File(st)); 
System.out.println(b); 

В этом фрагменте кода я пытаюсь переименовать файл, но я не могу найти в нем ошибку.Переименование файла в java

+5

Так и все мы. Какая у вас ошибка ? Вы пытались использовать File.exists() и другие методы, чтобы проверить, что делает ваша программа? –

+0

используйте код {}, а также укажите ошибки, которые вы получаете при запуске этого кода. –

+0

Ошибка в том, что значение b является ложным, что означает, что файл не был переименован. –

ответ

4

Не будет getTime().toString() вернуть строку с двоеточиями в ней? Это было бы незаконно в имени файла.

+0

Thnx. Можете ли вы предложить любой выход? –

+4

String str = новый формат SimpleDateFormat ("HH_mm_ss"). (Новая дата()); будет отформатировать вашу метку времени как 23_59_11 –

+0

Yup. Либо измените формат даты, который он возвращает, либо вручную замените незаконные имена файлов. – Merijn

1

вы можете удалить двоеточие из строки, например, с помощью этого метода: быть

 String time = "12:12:12"; 
     String time2 = time.replace(":", ""); 

выход: 121212

1

Я хотел бы использовать что-то вроде

final File file= new File("C:\\Documents and Settings\\Administrator\\Desktop\\ajay\\abc.csv"); 
final Calendar cal = Calendar.getInstance(); 
cal.setTime(new Date()); 
final StringBuilder str = new StringBuilder(); 
str.append(cal.get(Calendar.YEAR)); 
str.append(cal.get(Calendar.MONTH)); 
str.append(cal.get(Calendar.DATE)); 
final String st="C:\\Documents and Settings\\Administrator\\Desktop\\ajay\\abc"+str+".csv"; 
System.out.println(new Date().getTime()); 
final boolean b = file.renameTo(new File(st)); 
System.out.println(b); 
+0

'SimpleDateFormat' проще форматировать даты. – BalusC

+0

@BalusC Вы правы. – flash

+0

@flash попробовал ваш код, но проблема существует. –

Смежные вопросы