js请求base64数据转换为文件,在网页中调用
时间: 2024-02-16 15:59:55 浏览: 64
JavaScript实现Base64编码转换
好的,以下是在网页中使用 JavaScript 将 base64 数据转换为文件的完整示例:
```html
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Base64 to File</title>
</head>
<body>
<input type="file" id="file-input">
<button id="convert-button">Convert to File</button>
<script>
function base64ToFile(base64String, filename, mimeType) {
const byteCharacters = atob(base64String);
const byteNumbers = new Array(byteCharacters.length);
for (let i = 0; i < byteCharacters.length; i++) {
byteNumbers[i] = byteCharacters.charCodeAt(i);
}
const byteArray = new Uint8Array(byteNumbers);
const blob = new Blob([byteArray], { type: mimeType });
const url = URL.createObjectURL(blob);
const link = document.createElement('a');
link.href = url;
link.download = filename;
document.body.appendChild(link);
link.click();
document.body.removeChild(link);
URL.revokeObjectURL(url);
}
document.getElementById('convert-button').addEventListener('click', () => {
const input = document.getElementById('file-input');
if (input.files && input.files.length > 0) {
const file = input.files[0];
const reader = new FileReader();
reader.onload = () => {
const base64String = reader.result.split(',')[1];
base64ToFile(base64String, file.name, file.type);
};
reader.readAsDataURL(file);
}
});
</script>
</body>
</html>
```
这个示例包含一个文件输入框和一个“转换为文件”的按钮。当您选择一个文件并单击按钮时,它将读取文件内容并将其转换为 base64 编码。然后,它使用 `base64ToFile` 函数将 base64 编码转换为文件,并下载该文件。
阅读全文