我正在尝试解析csv文件,但此文件格式为ANSI。因此,当我在页面上打印出结果时,它看起来如下所示: ANSI file output
我在我的测试php文件中使用以下代码来转换字符串:
iconv(mb_detect_encoding($str, mb_detect_order(), true), "UTF-8", $str);
然后现在看起来很正常:
但我想在前端进行转换,使用js,所以有没有办法将字符串转换为utf-8格式,如php方法 - >的iconv()。
感谢。
答案 0 :(得分:1)
以下是使用文件输入控件读取一个文件的示例代码,并显示第一行以及一些文件的属性:
<input type="file" id="fileinput" />
<script type="text/javascript">
function readSingleFile(evt) {
//Retrieve the first (and only!) File from the FileList object
var f = evt.target.files[0];
if (f) {
var r = new FileReader();
r.onload = function(e) {
var contents = e.target.result;
alert( "Got the file.n"
+"name: " + f.name + "n"
+"type: " + f.type + "n"
+"size: " + f.size + " bytesn"
+ "starts with: " + contents.substr(1, contents.indexOf("n"))
);
}
r.readAsText(f);
} else {
alert("Failed to load file");
}
}
document.getElementById('fileinput').addEventListener('change', readSingleFile, false);
</script>
您可以使用HTML5 FileReader API来阅读文件。尝试加载错误的编码时,在内容破坏后尝试转换文件是没有意义的。
如果您想深入了解,请尝试查看以下文章: