Function Kata „File Path Helper“
Write a function to guarantee a file path to be absolute, e.g.
string FilePathHelper.MakeAbsolute(string filePath)
The function detects if a path is relative and if so converts it to an absolute path by treating
.. appropriately. The absolute path should not contain such „placeholders“ anymore.
- „~/Downloads/mountains.jpg“ becomes „/Users/brucew/Downloads/mountains.jpg“ (with „/Users/brucew“ being the current home directory)
- „./bin/debug/samples/config.json“ becomes „/Users/brucew/Projects/ETF/bin/debug/samples/config.json“ (with „/Users/brucew/Projects/ETF“ being the current working directory)
- „/Users/brucew/Projects/ETF/bin/../program.cs“ becomes „Users/brucew/Projects/ETF/program.cs“
The path delimiter is dependent on the operating system at runtime, e.g.
\ on Windows and
/ on Linux/macOS.
On Windows a drive prefix like
c: should be retained.