Menu

- Learn
- Documentation
  - Language Reference
  - Library Reference
  - Feature Overview
  - DMD Manual
  - Articles
- Packages
- Community
  - Bug Tracker
  - Forums
  - IRC
  - D on GitHub
  - Wiki
  - Review Queue
  - Twitter
  - More Links
- Resources
  - NEW Library Reference Preview
  - D-Specific Tools
  - Visual D
  - Editors
  - IDEs
  - Tutorials
  - Books
  - The D Style
  - Glossary
  - Acknowledgments
  - Sitemap

Search
Report a bug
If you spot a problem with this page, click here to create a Bugzilla issue.
Improve this page
Quickly fork, edit online, and submit a pull request for this page. Requires a signed-in GitHub account. This works well for small changes. If you'd like to make larger changes you may want to consider using a local clone.

# std.mmfile

Read and write memory mapped files.
License:
Boost License 1.0.
Authors:
Walter Bright, Matthew Wilson

Source: std/mmfile.d

class MmFile;
  MmFile objects control the memory mapped file resource.
  enum Mode: int;
    The mode the memory mapped file is opened with.
    read
      Read existing file
    readWriteNew
      Delete existing file, write new file
    readWrite
      Read/Write existing file, create if not existing
    readCopyOnWrite
      Read/Write existing file, copy on write
  this(string filename);
    Open memory mapped file filename for reading. File is closed when the object instance is deleted.
    Throws:
    std.file.FileException
  this(string filename, Mode mode, ulong size, void* address, size_t window = 0);
    Open memory mapped file filename in mode. File is closed when the object instance is deleted.
    Parameters:

    string filename | name of the file. If null, an anonymous file mapping is created.
    Mode mode | access mode defined above.
    ulong size | the size of the file. If 0, it is taken to be the size of the existing file.
    void* address | the preferred address to map the file to, although the system is not required to honor it. If null, the system selects the most convenient address.
    size_t window | preferred block size of the amount of data to map at one time with 0 meaning map the entire file. The window size must be a multiple of the memory allocation page size.

    Throws:
    std.file.FileException
  const @property ulong length();
    Gives size in bytes of the memory mapped file.
  Mode mode();
    Read-only property returning the file mode.
  void[] opSlice();
    Returns entire file contents as an array.
  void[] opSlice(ulong i1, ulong i2);
    Returns slice of file contents as an array.
  ubyte opIndex(ulong i);
    Returns byte at index i in file.
  ubyte opIndexAssign(ubyte value, ulong i);
    Sets and returns byte at index i in file to value.

Copyright Digital Mars 2004 - 2009. | Page generated by Ddoc on Mon Sep 19 09:25:30 2016