如何将Excel文件解析为变量?

发布于 2025-01-15 02:51:53 字数 1109 浏览 1 评论 0原文

我需要解析一个文件,该文件的内容存储到一个字符串变量中,该变量的值来自 reader.readAsText(文件); 问题是 XLSX 不接受 reader.readAsText(file) 存储的 Excel 文件的“字符串”或“缓冲区”;

<input type=file onchange="handleFileSelect(event)">
<textarea id="result" cols="10" rows="10"></textarea>
<script src="https://unpkg.com/xlsx/dist/xlsx.full.min.js"></script>
<script>
  function handleFileSelect(e) {
    let reader = new FileReader();

    reader.readAsText(e.target.files[0]);


    reader.onload = function () {
      let workbook = XLSX.read(reader.result, {
        type: "array"
      });
      workbook.SheetNames.forEach(function (sheetName) {
        let parsedRows = XLSX.utils.sheet_to_row_object_array(workbook.Sheets[sheetName]);
        document.getElementById("result").textContent = JSON.stringify(parsedRows);
      })
    };
  }
</script>

示例作品 ->只需将 readAsText 更改为 readAsBinaryString 并将 type: "array" 更改为 type: "binary" 是否可以解析 readAsText 内容?

I need to parse a file which content is stored to a string variable with a value received from
reader.readAsText(file);
The problem is XLSX does not accept either "string" or "buffer" to Excel file stored by reader.readAsText(file);

<input type=file onchange="handleFileSelect(event)">
<textarea id="result" cols="10" rows="10"></textarea>
<script src="https://unpkg.com/xlsx/dist/xlsx.full.min.js"></script>
<script>
  function handleFileSelect(e) {
    let reader = new FileReader();

    reader.readAsText(e.target.files[0]);


    reader.onload = function () {
      let workbook = XLSX.read(reader.result, {
        type: "array"
      });
      workbook.SheetNames.forEach(function (sheetName) {
        let parsedRows = XLSX.utils.sheet_to_row_object_array(workbook.Sheets[sheetName]);
        document.getElementById("result").textContent = JSON.stringify(parsedRows);
      })
    };
  }
</script>

Example works -> just change readAsText into readAsBinaryString and type: "array" into type: "binary"
Is it possible to parse readAsText content?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文