首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >JavaScript CSV读取行和列并存储在变量中

JavaScript CSV读取行和列并存储在变量中
EN

Stack Overflow用户
提问于 2021-04-16 11:27:49
回答 1查看 172关注 0票数 0

我有一个非常简单的要求,但不知道怎么做。下面的Javascript代码读取CSV文件并创建一个HTML表。我的CSV中包含以下数据:

代码语言:javascript
复制
Type, Item, Value, Dec, Figure
SUM,ThisItem,ThisValue,2,4
SUM,ThisItem1,ThisValue1,4,5
RCT,ThisItem1,ThisValue1,6,7

如何在下面的代码中插入代码或行,以帮助我在变量中存储"Type“列值,在变量中存储"Item”列值,等等。例如,如果Type==为“SUM”,则执行一些操作(例如,向表发送数据或完成行)。我尝试了几次,添加了一些逻辑,但都没有效果。

代码语言:javascript
复制
function Upload() {
const columns = [0,1,2,3,4] // represents allowed column 1 and 3 in index form

var fileUpload = document.getElementById("fileUpload");
var regex = /^([a-zA-Z0-9\s_\\.\-:])+(.csv|.txt)$/;
if (regex.test(fileUpload.value.toLowerCase())) {
    if (typeof (FileReader) != "undefined") {
        var reader = new FileReader();
        reader.onload = function (e) {
            var table = document.createElement("table");
            var rows = e.target.result.split("\n");
            for (var i = 0; i < rows.length; i++) { var cells = rows[i].split(","); if (cells.length > 1) {
                    var row = table.insertRow(-1);
                    for (var j = 0; j < cells.length; j++) {
                        // ignore columns that are not allowed
                        if (!columns.includes(j)) {
                          continue
                        }

                        var cell = row.insertCell(-1);
                        cell.innerHTML = cells[j];
                    }
                }
            }
            var dvCSV = document.getElementById("dvCSV");
            dvCSV.innerHTML = "";
            dvCSV.appendChild(table);
        }
        reader.readAsText(fileUpload.files[0]);
    } else {
        alert("This browser does not support HTML5.");
    }
} else {
    alert("Please upload a valid CSV file.");
}

}

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-04-16 12:49:21

cells[j]是CSV文件中的文本内容,使用条件on each iteration检查是否与您要查找的值匹配,如果匹配,则定义您的变量并完成您的行。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/67118700

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档