使用 javascript 读取 .dat 文件
Posted
技术标签:
【中文标题】使用 javascript 读取 .dat 文件【英文标题】:reading .dat files with javascript 【发布时间】:2014-10-16 17:00:59 【问题描述】:我正在尝试使用 javascript 上传文件 example.dat。我认为正确的路径是使用 fileReader,但它似乎无法处理这种格式。
目标是:在我这边导入这个 .dat 文件以上传二进制的单词列表,然后在导入后将它们转换回单词作为最终产品。此方法用于节省空间,因为我正在创建空间有限的游戏。
我查看了 DataView,但无法解决如何导入 .dat 文件并读取生成的导入。
先谢谢你了。
【问题讨论】:
我会使用 AJAX 来读取.dat
文件。看这里:***.com/questions/13623784/… 注意不管是.txt
还是.dat
。
我刚才使用了这个方法,当我使用.dat文件时,它似乎没有加载。也许,dataType 需要不同?
FileReader 可以处理任何格式。对于 ajax,只需设置 xhr.responseType="blob";然后你可以将响应提供给 FileReader,就像你有一个 File()
@dandavis,我使用的是 Spencer 建议我查看的模板。它可以很好地导入 .txt 文件,但不能导入 .dat ... 所以,我有这个二进制文件,我想读取它并将其转换回单词,以节省空间。我觉得它没有正确解释数据,这个二进制文件有除 1 和 0 以外的其他字符...
从输入或通过 ajax 获取 blob 是没有问题的,一旦你得到 blob 就很重要了。没有标准的 dat 文件,所以我无法告诉您如何将这些位转换为字符串,但读取文本显然不起作用。也许您想要一个 UInt8Array 或将 char 值转换为 unicode 字符。
【参考方案1】:
我有一个和你一样的问题,我使用这些代码从 .dat 文件中读取所需的数据:
$("#importFileBtn").change(function (event)
$.each(event.target.files, function (index, file)
var reader = new FileReader();
reader.onload = function (e)
// e.target.result should contain the text
log(e.target.result);
;
reader.readAsText(file);
);
);
【讨论】:
以上是关于使用 javascript 读取 .dat 文件的主要内容,如果未能解决你的问题,请参考以下文章
delphi 中如何将图片数据保存到dat文件里的,然后读取出来,并在Image控件中显示。