I assume the error is happening here somewhere:
string iii=".bak";
string xxx = dateTimePicker4.Text;
string y = Convert.ToString(i);
string format = ("yyyy-MM-dd");
DateTime f = Convert.ToDateTime(xxx);
string yy = f.ToString(format);
For starters, don't use DateTimePicker.Text - it has a Value property which returns a DateTime directly, so you do not need to do any conversion.
You don't use the value in "y", so ythere is no need to assign it.
You don't need brackets round a string literal
string iii=".bak";
string y;
string format = "yyyy-MM-dd";
DateTime f = dateTimePicker4.Value;
string yy = f.ToString(format);
In fact, I would simplify this a bit:
string iii=".bak";
string y;
string yy = dateTimePicker4.Value.ToString("yyyy-MM-dd");
And I would change the names as well:
string backupExt = ".bak";
string temp;
string dateFormatted = dateTimePicker4.Value.ToString("yyyy-MM-dd");