# Function std::fs::canonicalize [−] [src]

    pub fn canonicalize<P: AsRef<Path>>(path: P) -> Result<PathBuf>

1.5.0

Returns the canonical form of a path with all intermediate components normalized and symbolic links resolved.

# Platform-specific behavior

This function currently corresponds to the `realpath` function on Unix and the `CreateFile` and `GetFinalPathNameByHandle` functions on Windows. Note that, this may change in the future.

# Errors

This function will return an error in the following situations, but is not limited to just these cases:

- `path` does not exist.
- A component in path is not a directory.

# Examples

fn main() { use std::fs; fn foo() -> std::io::Result<()> { let path = try!(fs::canonicalize("../a/../foo.txt")); Ok(()) } }

    use std::fs;

    let path = try!(fs::canonicalize("../a/../foo.txt"));

# Help

## Keyboard Shortcuts

?
  Show this help dialog
S
  Focus the search field
⇤
  Move up in search results
⇥
  Move down in search results
⏎
  Go to active search result

## Search Tricks

Prefix searches with a type followed by a colon (e.g. `fn:`) to restrict the search to a given type.

Accepted types are: `fn`, `mod`, `struct`, `enum`, `trait`, `type`, `macro`, and `const`.

Search functions by type signature (e.g. `vec -> usize` or `* -> vec`)