Выбрать определенный файл с компьютера для загрузки на сайт
На сайте есть поле для загрузки файла:
<input name="file_load" type="file" size="35">
Я хочу сделать скрипт который откроет окно выбора файла на компьютере и выберет нужный файл (по его названию).
Каким образом этом можно реализовать?
Ответы (1 шт):
Автор решения: Трипольский Пётр
→ Ссылка
Выбор и чтение текстового файла можно реализовать следующим способом
const uploadFile = () => new Promise((res, rej) => {
const input = document.createElement('input');
const reader = new FileReader();
input.type = 'file';
input.onchange = () => {
const [file] = input.files;
reader.onload = () => {
const { result } = reader;
if (result) {
const data = result.toString();
res(data);
} else {
rej();
}
}
reader.readAsText(file);
};
input.click();
});
Думаю, вам сразу пригодится сохранение файла из браузера
const downloadFile = (data, name) => {
const blob = new Blob([data], { type: 'text/plain;charset=utf-8' });
const url = window.URL.createObjectURL(blob);
const a = document.createElement('a');
[a.href, a.download] = [url, name];
a.click();
window.URL.revokeObjectURL(url);
};