FileReader是浏览器提供的用于读取本地文件内容的API,通过结合<input type="file">获取用户选择的文件后,使用readAsText、readAsDataURL等方法异步读取文本、图片预览或二进制数据,并在onload回调中处理结果,同时需监听onerror处理异常,适用于文本解析、图片预览等场景。

在前端开发中,有时需要让用户选择本地文件并读取其内容,比如上传前预览文本、图片或 CSV 文件。JavaScript 提供了 FileReader API 来实现对本地文件的异步读取,而无需将文件发送到服务器。
FileReader 是浏览器提供的 Web API,用于读取 File 或 Blob 对象的内容。它支持多种格式输出,如文本、Data URL(base64)、ArrayBuffer 等。
通常结合 <input type="file"> 使用,用户选择文件后,通过 FileReader 读取内容并展示或处理。
以下是使用 FileReader 读取本地文件的基本流程:
立即学习“Java免费学习笔记(深入)”;
<input type="file" id="fileInput" />
<pre id="output"></pre>
<script>
document.getElementById('fileInput').addEventListener('change', function(e) {
const file = e.target.files[0];
if (!file) return;
const reader = new FileReader();
reader.onload = function(event) {
document.getElementById('output').textContent = event.target.result;
};
reader.readAsText(file); // 以文本形式读取
});
</script>
FileReader 提供了几个不同的读取方式,根据文件类型选择合适的方法:
<input type="file" accept="image/*" />
<img id="preview" src="" style="max-width: 300px;" />
<script>
document.querySelector('input[type="file"]').addEventListener('change', function(e) {
const file = e.target.files[0];
if (!file || !file.type.match('image/')) return;
const reader = new FileReader();
reader.onload = function(event) {
document.getElementById('preview').src = event.target.result;
};
reader.readAsDataURL(file);
});
</script>
读取文件过程中可能发生错误,例如文件过大、权限问题等,可以通过监听 onerror 事件捕获异常。
reader.onerror = function() {
console.error('文件读取失败:', reader.error);
};
注意点:
以上就是JavaScript 文件操作:FileReader 读取本地文件内容的详细内容,更多请关注php中文网其它相关文章!
每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号