Spec-Zone.ru › Pony

Пакет Files

Пакет Files предоставляет классы для работы с файлами и каталогами.

Файлы идентифицируются объектами FilePath, которые представляют собой и путь к файлу, и возможности доступа к файлу по этому пути. Объекты FilePath могут быть использованы с примитивами CreateFile и OpenFile и классом File, чтобы получить ссылку на файл, который может быть использован для записи в файл и/или чтения из него. Он также может быть использован с объектом Directory, чтобы получить ссылку на объект каталога, который может быть использован для операций с каталогами.

Класс FileLines позволяет получать доступ к файлу по одной строке за раз.

Актер FileStream предоставляет возможность асинхронной записи в файл.

Примитив Path может быть использован для выполнения операций, связанных с путями, над строками и символами.

Пример программы

Эта программа открывает файлы, указанные в качестве аргументов командной строки, и выводит их содержимое.

use "files"

actor Main
  new create(env: Env) =>
    try
      for file_name in env.args.slice(1).values() do
        let path = FilePath(env.root as AmbientAuth, file_name)?
        match OpenFile(path)
        | let file: File =>
          while file.errno() is FileOK do
            env.out.write(file.read(1024))
          end
        else
          env.err.print("Error opening file '" + file_name + "'")
        end
      end
    end

Типы публичного доступа

  • примитив Path
  • актер FileStream
  • интерфейс WalkHandler
  • класс FilePath
  • класс FileMode
  • класс FileLines
  • класс FileInfo
  • примитив FileCreate
  • примитив FileChmod
  • примитив FileChown
  • примитив FileLink
  • примитив FileLookup
  • примитив FileMkdir
  • примитив FileRead
  • примитив FileRemove
  • примитив FileRename
  • примитив FileSeek
  • примитив FileStat
  • примитив FileSync
  • примитив FileTime
  • примитив FileTruncate
  • примитив FileWrite
  • примитив FileExec
  • тип FileCaps
  • примитив FileOK
  • примитив FileError
  • примитив FileEOF
  • примитив FileBadFileNumber
  • примитив FileExists
  • примитив FilePermissionDenied
  • тип FileErrNo
  • примитив CreateFile
  • примитив OpenFile
  • класс File
  • класс Directory

© 2016-2020, The Pony Developers
© 2014-2015, Causality Ltd.
Licensed under the BSD 2-Clause License.
https://stdlib.ponylang.io/files--index

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API