private void searchAndReplaceFor(File directory)
	{
		File[] directories = directory.listFiles(dirFilter);

		for (int i = 0; i < directories.length; i++)
		{
			searchAndReplaceFor(directories[i]);
		}
		File[] files = directory.listFiles(fileFilter);

		System.out.println("*");
		System.out.println("* MODIFYING FILES IN [" + directory + "]");
		System.out.println("*");
		for (int i = 0; i < files.length; i++)
		{
			File f1 = files[i];

			if (f1.isDirectory() == false)

			{
				String newName = prefix
						+ StringUtils.prePadZeros((i + 1), numericLength) + "."
						+ suffix;

				if (f1.getName().equals(newName) == false)
				{
					File f2 = new File(directory.getAbsolutePath()
							+ File.separator + newName);
					boolean success = f1.renameTo(f2);

					if (!success)
					{
						System.out
								.println("*******************************************************");
						System.out.println("* FAILED");
						System.out.println("* OLD NAME[" + f1.getPath() + "]");
						System.out.println("* NEW NAME[" + f2.getPath() + "] ");
						System.out.println("*");
					}
				}
				else
				{
					System.out
							.println("*******************************************************");
					System.out.println("* IGNORED [" + f1.getPath() + "]");
				}
			}
		}
	}