Components All New MacOS Windows Linux iOS
Examples Mac & Win Server Client Guides Statistic FMM Blog Deprecated Old

Container.WriteFile

Writes a file with the given container.

Component Version macOS Windows Linux Server iOS SDK
Container 6.4 ✅ Yes ✅ Yes ✅ Yes ✅ Yes ✅ Yes
MBS( "Container.WriteFile"; Data; FilePath )   More

Parameters

Parameter Description Example
Data The container field or value to save. $Image
FilePath The native file path. Something like "/Users/cs/desktop/test.jpg" on Mac and "C:\Programs\Data\test.jpg" on Windows. Files without path end in the root directory on Mac. "test.jpg"

Result

Returns OK or error.

Description

Writes a file with the given container.
See also Files.WriteFile for more options.

See FileDialog functions if you like to show a save dialog to pick a destination for the file path.
You can use Files.ReadFile to read a file into a container field or variable.
If you need to create directory first, please use Files.CreateDirectory function.

This function requires a native path. Use Path.FileMakerPathToNativePath to convert a FileMaker path to a native path if required. If you like to have the user choose the path, you can use FileDialog functions.
For Server be aware that server has limited permissions and may not be able to access all files on a computer.

Examples

Read a file and write it elsewhere

Set Variable [$Image; Value:MBS( "Container.ReadFile"; "/Users/cs/Pictures/Test.jpg")]
Set Variable [$r; Value:MBS( "Container.WriteFile"; $Image; "/Users/cs/Desktop/target.jpg")]

Export a container to desktop:

# get path stored in the container field
Set Variable [ $ContainerPath ; Value: GetAsText ( Contacts::Photo Container ) ]
# get the file name portion
Set Variable [ $ContainerName ; Value: MBS( "Path.LastPathComponent"; $ContainerPath ) ]
# take a folder on the computer, e.g. desktop
Set Variable [ $DesktopFolder ; Value: MBS( "Folders.UserDesktop" ) ]
# build path with file name on that folder
Set Variable [ $FilePath ; Value: MBS( "Path.AddPathComponent"; $DesktopFolder; $ContainerName ) ]
# and export the content of container to that path
Set Variable [ $r ; Value: MBS( "Container.WriteFile"; Contacts::Photo Container; $FilePath ) ]

Write a HTML file and an image file to load in web viewer:

Set Variable [ $folder ; Value: MBS( "Folders.UserTemporary" ) ]
Set Variable [ $path ; Value: MBS( "Path.AddPathComponent"; $folder; "test.jpg" ) ]
Set Variable [ $r ; Value: MBS( "Container.WriteFile"; Images::Image; $path ) ]
#
Set Variable [ $html ; Value: "<html><body><p>Hello World</p><img src=test.jpg width=300></body></html>" ]
Set Variable [ $path ; Value: MBS( "Path.AddPathComponent"; $folder; "test.html" ) ]
Set Variable [ $r ; Value: MBS( "Text.WriteTextFile"; $html; $path ) ]
#
Set Variable [ $URL ; Value: MBS( "Path.FilePathToFileURL"; $Path ) ]
Set Web Viewer [ Object Name: "web" ; URL: $URL ]

See also

Example Databases

Blog Entries

This function is free to use.

Created 6th September 2016, last changed 26th October 2023


Container.WriteArchive - ContinuityCamera.CanImport