Почему даты преобразуются в другой формат при разборе? - PullRequest
0 голосов
/ 01 ноября 2019

Я использую xlsx для синтаксического анализа .xls файлов.

У меня возникла проблема с форматом даты после анализа файла, и я хотел бы знать, почему, ивозможно, как это исправить?

Здесь - это файл примера, с которым я работал, он всего 3 строки.

здесь код, который у меня есть до сих пор

import React, { Component } from 'react';
import { render } from 'react-dom';
import XLSX from "xlsx";

import './style.css';

class App extends Component {
  constructor() {
    super();
    this.state = {
      name: 'React'
    };
  }

   xslToJson = workbook => {
  var data = [];
var sheet_name_list = workbook.SheetNames;
 return XLSX.utils.sheet_to_json(workbook.Sheets[sheet_name_list[0]], {raw: false});

};

     handleFile = (file /*:File*/) => {
    /* Boilerplate to set up FileReader */
    const reader = new FileReader();
    const rABS = !!reader.readAsBinaryString;
    reader.onload = e => {
      /* Parse data */
      const bstr = e.target.result;
      const wb = XLSX.read(bstr, { type: rABS ? "binary" : "array" });
      /* Get first worksheet */
      let arr = this.xslToJson(wb);
      console.log(arr)
    };
    if (rABS) reader.readAsBinaryString(file);
    else reader.readAsArrayBuffer(file);
  };

   handleChange = (e) => {
        const files = e.target.files;
        if (files && files[0]) {
            this.handleFile(files[0]);

        }
    };

  render() {
    return (
      <div>
        <input
        type="file"
        onChange={this.handleChange}
        className="inputfile"
        id="embedpollfileinput"
      />
      </div>
    );
  }
}

render(<App />, document.getElementById('root'));


enter image description here

в моем файле xsl, DD/MM/YYYY формат присутствует. но когда я анализирую xlsфайл, который он показывает мне в MM/DD/YY enter image description here

xslToJson = workbook => {
  var data = [];
var sheet_name_list = workbook.SheetNames;
 return XLSX.utils.sheet_to_json(workbook.Sheets[sheet_name_list[0]], {raw: false});

};

     handleFile = (file /*:File*/) => {
    /* Boilerplate to set up FileReader */
    const reader = new FileReader();
    const rABS = !!reader.readAsBinaryString;
    reader.onload = e => {
      /* Parse data */
      const bstr = e.target.result;
      const wb = XLSX.read(bstr, { type: rABS ? "binary" : "array" });
      /* Get first worksheet */
      let arr = this.xslToJson(wb);
      console.log(arr)
    };
    if (rABS) reader.readAsBinaryString(file);
    else reader.readAsArrayBuffer(file);
  };
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...