用javascript读取csv文件

时间:2017-06-27 21:15:00

标签: javascript csv iframe

目前我正在使用此代码使用javascript查看webbrowser中csv的内容。但这仅适用于Firefox,因为其他浏览器不允许您从iframe中获取内容。如果我想使用这个方法,我需要将我的csv转换为txt,并希望保留csv而不是txt。

你们是否知道如何在没有iframe部分和txt部分的情况下完成这项工作,以便我可以在不同的浏览器中使用它?谢谢!

<iframe id="frmFile" src="content/assets/output.txt" onload="LoadFile();" style="display: none;"></iframe>

<script>function LoadFile() {
var oFrame = document.getElementById("frmFile");
var strRawContents = oFrame.contentWindow.document.body.childNodes[0].innerHTML;

while (strRawContents.indexOf("\r") >= 0)
strRawContents = strRawContents.replace("\r", "");
var arrLines = strRawContents.split("\n");
var alltext = "";

if(arrLines[12].split(";")[8] == "0"){ }
for (var i = 1; i < arrLines.length; i++)
{
    alltext += "<tr>";
    var prop = arrLines[i].split(";");
    for (var j = 0; j < 11; j++) {
        alltext += "<td>" + prop[j] + "</td>";
    }
    alltext += "</tr>";
    document.close();
}
document.getElementById("message").innerHTML = alltext;
}
</script>

1 个答案:

答案 0 :(得分:1)

我建议Ajax获取文件 - &gt;这样你就可以得到文字内容。

<!-- no iframe -->

<script>
var url = "http://www.example.com/file.txt";
var txtFile = new XMLHttpRequest();
txtFile.open("GET",url,true);
txtFile.send();

txtFile.onreadystatechange = function(){
     if (txtFile.readyState== 4 && txtFile.status == 200)
     {              
         var strRawContents = jsonFile.responseText;
     }
}
</script>