Skip to main content
Write files to your sandbox filesystem. HopX supports both text and binary file writing with automatic encoding and permission handling.

Overview

File writing is essential for:
  • Creating scripts and code files
  • Saving generated data and results
  • Writing configuration files
  • Storing outputs from computations
Files can be written to allowed paths like /workspace and /tmp. Writing to system directories may be restricted for security.

Writing Text Files

Write text files as strings:
Expected Output:

Writing Multi-line Files

Write files with multiple lines:
Expected Output:

Writing Binary Files

Write binary files (images, PDFs, etc.):
Expected Output:

Writing Code Files

Write and execute code files:
Expected Output:

File Permissions

Set file permissions when writing:
Expected Output:

Writing Configuration Files

Write JSON, YAML, or other configuration files:
Expected Output:

Writing Large Files

For large files, consider chunking or using upload:
Expected Output:

Complete Example

Here’s a complete example showing file writing workflow:

Best Practices

1

1. Use Appropriate Method

Use write() for text files and write_bytes() for binary files (images, PDFs, etc.).
2

2. Set Permissions Correctly

Set appropriate file permissions (e.g., ‘0755’ for executables, ‘0644’ for regular files).
3

3. Create Directories First

Use files.mkdir() to create directories before writing files in them.
4

4. Handle Large Files

For very large files, consider using Upload instead of writing directly.
5

5. Write to Allowed Paths

Only write to allowed paths like /workspace and /tmp. System directories may be restricted.

Next Steps