Refactor #5580: Add new file&directory apis into FileUtils and test cases

What's this function mean?