РЕПЕТИТОР математика физика информатика
Для школьников и студентов. Подтягивание пробелов. ЦЭ, ЦТ, ОГЭ, ЕГЭ.
Идет набор на ЛЕТО. Жмите для подробностей:)
668 of 723 menu

Метод listSync

Метод listSync класса Directory возвращает список содержимого директории синхронно, то есть блокирует выполнение программы до завершения чтения. Метод возвращает список объектов FileSystemEntity (файлов и поддиректорий). В первый параметр мы передаем булево значение recursive - если оно равно true, содержимое читается рекурсивно, включая вложенные директории. Во второй параметр мы передаем булево значение followLinks - если оно равно true, символические ссылки разыменовываются. Оба параметра необязательны и по умолчанию равны false.

Синтаксис

dir.listSync([recursive, followLinks])

Пример

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

import 'dart:io'; void main() { Directory dir = Directory('test_dir'); dir.createSync(); File('test_dir/a.txt').createSync(); File('test_dir/b.txt').createSync(); List<FileSystemEntity> res = dir.listSync(); print(res); dir.deleteSync(recursive: true); }

Результат выполнения кода:

[File: 'test_dir/a.txt', File: 'test_dir/b.txt']

Пример

Давайте получим список содержимого рекурсивно, включая вложенные директории:

import 'dart:io'; void main() { Directory dir = Directory('test_dir'); dir.createSync(); Directory('test_dir/sub').createSync(); File('test_dir/sub/c.txt').createSync(); List<FileSystemEntity> res = dir.listSync(recursive: true); print(res); dir.deleteSync(recursive: true); }

Результат выполнения кода:

[Directory: 'test_dir/sub', File: 'test_dir/sub/c.txt']

Пример

Давайте переберем все элементы директории и выведем только файлы:

import 'dart:io'; void main() { Directory dir = Directory('test_dir'); dir.createSync(); File('test_dir/a.txt').createSync(); Directory('test_dir/sub').createSync(); List<FileSystemEntity> res = dir.listSync(); for (FileSystemEntity entity in res) { if (entity is File) { print(entity.path); } } dir.deleteSync(recursive: true); }

Результат выполнения кода:

"test_dir/a.txt"

Смотрите также

  • класс Directory,
    который представляет директорию
  • метод list,
    который возвращает список содержимого асинхронно
  • метод createSync,
    который синхронно создает директорию
  • метод delete,
    который удаляет директорию
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить