FileSystemWritableFileStream: метод seek()
Ограниченная доступность
Эта функция не является базовой, так как она не работает в некоторых из наиболее широко используемых браузеров.
Безопасный контекст: Эта функция доступна только в безопасных контекстах (HTTPS) в некоторых или во всех поддерживающих браузерах.
Примечание: Эта функция доступна в Web Workers.
Метод seek() интерфейса FileSystemWritableFileStream обновляет смещение текущего курсора файла до позиции (в байтах), указанной при вызове метода.
Синтаксис
seek(position)
Параметры
position-
Число, определяющее позицию байта с начала файла.
Возвращаемое значение
Обещание Promise, которое возвращает undefined.
Исключения
-
NotAllowedErrorDOMException -
Выбрасывается, если
PermissionStatus.stateнеgranted. TypeError-
Выбрасывается, если
positionне является числом или не определено.
Примеры
Следующая асинхронная функция открывает диалог выбора файла «Сохранить файл», который возвращает FileSystemFileHandle после выбора файла. Из него создается поток записи с помощью метода FileSystemFileHandle.createWritable().
Далее мы записываем в поток:
- В поток записывается строка текста.
- Метод
seek()используется для перевода курсора в начало потока. - В начало потока записывается вторая строка текста, перезаписывая первую запись.
Затем поток закрывается.
async function saveFile() {
try {
// create a new handle
const newHandle = await window.showSaveFilePicker();
// create a FileSystemWritableFileStream to write to
const writableStream = await newHandle.createWritable();
// write our file
await writableStream.write("My first file content");
await writableStream.seek(0);
await writableStream.write("My second file content");
// close the file and write the contents to disk.
await writableStream.close();
} catch (err) {
console.error(err.name, err.message);
}
}
Если вы запустите вышеприведенную функцию, а затем откроете созданный на диске файл, вы должны увидеть текст «My second file content».
Спецификации
Совместимость с браузерами
| Рабочие столы | Мобильные устройства | ||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| Chrome | Edge | Firefox | Opera | Safari | Chrome Android | Firefox для Android | Opera Android | Safari на IOS | Samsung Internet | WebView Android | |
seek |
86 | 86 | 111 | 72 | Нет | 109 | 111 | 74 | Нет | 21.0 | 109 |
См. также
© 2005–2024 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/API/FileSystemWritableFileStream/seek