gpt4 book ai didi

javascript - 下载二进制格式的字节数组

转载 作者:行者123 更新时间:2023-12-04 08:43:04 25 4
gpt4 key购买 nike

我正在处理这段代码,我想下载一个字节数组,它此时正在工作,但下载的文件是用 ascii 编码的。
下载的文件显示
“65,66,67,0,0,0,0,0,0,0”
但我期待“ABC”
如何更改此代码以获取二进制格式的文件?

<!DOCTYPE html>
<html>

<body>

<h1>Writing a binary file</h1>

<script>

var dados = new Int8Array(10);

dados[0]=65;
dados[1]=66;
dados[2]=67;

function download()
{
let element = document.createElement('a');
element.setAttribute('href', 'data:application/octet-stream,' + dados );
element.setAttribute('download', "teste.bin" );
element.style.display = 'none';
document.body.appendChild(element);
element.click();
document.body.removeChild(element);
}
download();


</script>

</body>
</html>

最佳答案

好的 - 现在我知道发生了什么。
感谢您更新您的帖子:)
您无意中将 Int8Array "dados"转换为文本字符串。哎呀!
这是另一种方法:

<!DOCTYPE html>
<html>
<body>

<h1>Writing a binary file</h1>

<script>
function download(bytes, fname) {
debugger;
let blob = new Blob([bytes], {type:"application/octet-stream"});
let link = document.createElement('a');
link.href = window.URL.createObjectURL(blob);
link.download = fname;
link.click();
}

let dados = new Int8Array(10);
dados[0]=65;
dados[1]=66;
dados[2]=67;

download(dados, "teste.bin");
</script>

</body>
</html>
我也会考虑 terrymorse 关于使用 fetch() 的极好建议
'希望有帮助!

关于javascript - 下载二进制格式的字节数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64468174/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com