No.
Do not concatenate strings to build a SQL command. It leaves you wide open to accidental or deliberate SQL Injection attack which can destroy your entire database. Use Parametrized queries instead.
SqlDataAdapter da = new SqlDataAdapter("SELECT * FROM txfile WHERE exp_date BETWEEN @SD AND @ED, con);
da.SelectComand.Parameters.AddWithValue("@SD", v_fd);
da.SelectComand.Parameters.AddWithValue("@SD", v_td);
BTW: It's also considered a bad practice to use
SELECT *
- you should list the columns you want to retrieve. It can be very wasteful in memory and bandwidth to return columns you don't need.