Instance Property


A new string made by removing extraneous path components from the receiver.


@property(readonly, copy) NSString *stringByStandardizingPath;


A new string made by performing the following operations:

  • Expanding an initial tilde expression using stringByExpandingTildeInPath.

  • Removing an initial component of “/private/var/automount”, “/var/automount”, or “/private” from the path, if the result still indicates an existing file or directory (checked by consulting the file system).

  • Reducing empty components and references to the current directory (that is, the sequences “//” and “/./”) to single path separators.

  • Removing a trailing slash from the last component.

  • For absolute paths only, resolving references to the parent directory (that is, the component “..”) to the real parent directory if possible using stringByResolvingSymlinksInPath. For relative paths, references to the parent directory are left in place.

Returns self if an error occurs.

Note that the path returned by this method may still have symbolic link components in it. Note also that this method only works with file paths (not, for example, string representations of URLs).

See Also

Working with Paths

+ pathWithComponents:

Returns a string built from the strings in a given array by concatenating them with a path separator between each pair.


The file-system path components of the receiver.

- completePathIntoString:caseSensitive:matchesIntoArray:filterTypes:

Interprets the receiver as a path in the file system and attempts to perform filename completion, returning a numeric value that indicates whether a match was possible, and by reference the longest path that matches the receiver.


A file system-specific representation of the receiver.

- getFileSystemRepresentation:maxLength:

Interprets the receiver as a system-independent path and fills a buffer with a C-string in a format and encoding suitable for use with file-system calls.


A Boolean value that indicates whether the receiver represents an absolute path.


The last path component of the receiver.


The path extension, if any, of the string as interpreted as a path.


A new string that replaces the current home directory portion of the current path with a tilde (~) character.

- stringByAppendingPathComponent:

Returns a new string made by appending to the receiver a given string.

- stringByAppendingPathExtension:

Returns a new string made by appending to the receiver an extension separator followed by a given extension.


A new string made by deleting the last path component from the receiver, along with any final path separator.


A new string made by deleting the extension (if any, and only the last) from the receiver.


A new string made by expanding the initial component of the receiver to its full path value.


A new string made from the receiver by resolving all symbolic links and standardizing path.

- stringsByAppendingPaths:

Returns an array of strings made by separately appending to the receiver each string in a given array.