Member 13012003 Ответов: 0

Как удалить файлы, указав расширение файла, включая *.


Если я дам "txt", он должен удалить только файлы расширения .txt.
Если я дам "*txt", он должен удалить только файлы расширения .123txt.
Если я дам "txt*", он должен удалить только файлы расширения .txt123.

Как это сделать..

Я использовал парный код.. в этом
Если я даю "txt", это удаление файлов расширения .txt, а также .123txt.
Если я дам "*формат txt" или ".формате txt*" это удаление .тхт, .123txt и .расширение txt123 файлов.

Что я уже пробовал:

Здесь я читаю расширение из xml-файла, из тега<filepattern & gt;....

for (int iCr = 0; iCr < filePattern.length ; iCr ++)
	 {
if (filePattern[iCr].startsWith("*") && filePattern[iCr].length() > 2 ||filePattern[iCr].endsWith("*")&& filePattern[iCr].length() > 2)
 {
if(strFileName.contains(filePattern[iCr].substring(1,filePattern[iCr].length()-1).toLowerCase()))
 {
	 isFileFound = true;
	 break;
	 }
 }
 else if (filePattern[iCr].startsWith("*") && filePattern[iCr].length() == 1 )
 {
 isFileFound = true;
break;
}
 else	
 {
 if (strFileName.endsWith(filePattern[iCr].toLowerCase()))
	 {
	 isFileFound = true;
	 break;
}
 }
 }

 if (isFileFound)
 { \\deleting Files
}

Richard MacCutchan

Да, потому что ваши тесты ошибочны. Если вы хотите удалить только файлы .txt, то вам нужно проверить расширение файла на наличие именно этой строки, а не удалять что-либо с расширением, начинающимся с "txt".

Member 13012003

хорошо thanq

PIEBALDconsult

Какая Операционная Система? В Windows вам нужно быть особенно осторожным с расширениями.
https://en.wikipedia.org/wiki/8.3_filename
https://technet.microsoft.com/en-us/library/ff621566(в=ВУ.11).aspx-файл

Member 13012003

Windows7 на

0 Ответов