Topics   All   MacOS (Only)   Windows (Only)   Linux (Only, Not)   iOS (Only, Not)  
Components   Crossplatform Mac & Win   Server   Client   Old   Deprecated   Guides   Examples   Videos
New in version: 11.0   11.1   11.2   11.3   11.4   11.5   12.0   12.1   12.2   12.3    Statistic    FMM    Blog  

Path.FileMakerPathToNativePath

Converts a FileMaker path useful for "filemac:" and "filewin:" path specification to a native path.

Component Version macOS Windows Linux Server iOS SDK License
Path 2.4 ✅ Yes ✅ Yes ✅ Yes ✅ Yes ✅ Yes Paid
MBS( "Path.FileMakerPathToNativePath"; path { ; PassThroughNativePath } )   More

Parameters

Parameter Description Example Flags
path The FileMaker file path. "/Macintosh HD/Users/test/Desktop/picture.jpg"
PassThroughNativePath Available in MBS FileMaker Plugin 11.0 or newer.
Whether to pass through a native path directly and avoid conversion, if the path is valid already.
Default is 1 to enable this.
1 Optional

Result

Returns the native path.

Description

Converts a FileMaker path useful for "filemac:" and "filewin:" path specification to a native path.
The difference between a native path and a FileMaker path on Mac is, that FileMaker expects to have the Disk Name in front followed by the rest of the path. macOS functions require paths from the root disk to start without volume name. Other disks have paths starting with "/Volumes/name".
This function does not work for relative paths.

For version 11.0 we build in a check to pass through valid native paths. You should not need this feature as you care about your paths and you know what path you put into what variable, right?

Examples

Convert path to native path:

MBS( "Path.FilemakerPathToNativePath"; "/Macintosh HD/Users/test/Desktop/picture.jpg")

Convert path with path list:

MBS( "Path.FileMakerPathToNativePath";
"file:test/picture.jpg¶" &
"fileLinux:/test/picture.jpg¶" &
"fileMac:/Macintosh HD/Users/test/Desktop/picture.jpg¶" &
"fileWin:D:\test\picture.jpg" )
// pick the right path from a list of paths.

Batch convert list of paths:

# test kopie20 in file Contacts

Set Variable [ $FMPaths ; Value: "/Mac/Users/test/Desktop/picture1.jpg" & ¶ &
    "/Mac/Users/test/Desktop/picture2.jpg" & ¶ &
    "/Mac/Users/test/Desktop/picture3.jpg" & ¶ &
    "/Mac/Users/test/Desktop/picture4.jpg" & ¶ &
    "/Mac/Users/test/Desktop/picture5.jpg" & ¶ &
    "/Mac/Users/test/Desktop/picture6.jpg"]
Set Variable [ $NativePaths ; Value: While (
    [ list = ""; i = 1; c = ValueCount ( $FMPaths ) ] ;
    i ≤ c ;
    [ path = GetValue($FMPaths; i); npath = MBS( "Path.FileMakerPathToNativePath"; path ); list = list & npath & ¶; i = i + 1 ] ; list ) ]
Show Custom Dialog [ "Native Paths" ; $NativePaths ]

See also

Release notes

Example Databases

Blog Entries

Created 18th August 2014, last changed 22nd February 2022


Path.AddPathComponent - Path.FilePathToFileURL

Feedback: Report problem or ask question.


Start Chat