As the spread of smartphones increases, the data traffic generated by mobile applications such as video streaming service is undergoing and exponential growth. The mobile user requests contents in a subway, bus, or other vehicle easily, so that the large traffic burden occurs due to frequent large size of file requested and low latency required. Also, high-mobility users have various file preferences since there exists a local preference. Caching in a base station (BS) is an effective way to address the challenges as the demand for mobile applications. In this paper, the research on caching in vehicular networks is motivated by practical issue, i.e. mobility and file preference. We exploit user mobility and file preference to improve caching placement in vehicle networks. The optimization problem which maximizes the weighted sum of the cache efficiency is formulated. The optimization problem is mixed integer nonlinear programming problem, which is NP-hard problem. To solve the optimization problem, this paper proposes an dynamic programming (DP) algorithm, and we obtain a sub-optimal solution. In simulation results, the proposed caching scheme is compared with the popular caching and uniform caching. The results shows that the proposed caching scheme outperforms both the popular caching scheme and random caching scheme.