[Erkennen Sie das Lesen der von el-input hochgeladenen Execl-Dateien]

<template>
  <div>
    <input type="file" id="file-input" @change="handleFileUpload">
  </div>
</template>

<script>
export default {
      
      
  methods: {
      
      
    handleFileUpload(event) {
      
      
      const fileInput = event.target;
      const file = fileInput.files[0];
      
      // 检查文件类型为<input type="file">时是否是Excel文件
      if (file.type === 'application/vnd.ms-excel' || file.type === 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet') {
      
      
        // 处理Excel文件
        this.readExcelFile(file);
      } else {
      
      
        alert('请选择一个Excel文件!');
      }
    },
    
    readExcelFile(file) {
      
      
      const reader = new FileReader();
      
      reader.onload = (e) => {
      
      
        const data = e.target.result;
        const workbook = XLSX.read(data, {
      
       type: 'binary' });
        
        // 获取第一个工作表
        const worksheet = workbook.Sheets[workbook.SheetNames[0]];
        
        // 将工作表转换为JSON对象
        const jsonData = XLSX.utils.sheet_to_json(worksheet);
        
        console.log(jsonData);
      };
      
      reader.readAsBinaryString(file);
    }
  }
}
</script>

Datumsformat formatieren

const XLSX = require('xlsx');

// 读取Excel文件
const workbook = XLSX.readFile('your_file.xlsx');

// 获取第一个工作表
const worksheet = workbook.Sheets[workbook.SheetNames[0]];

// 遍历第一个工作表中的单元格
for (const cellAddress in worksheet) {
    
    
  if (!cellAddress.startsWith('!')) {
    
    
    const cell = worksheet[cellAddress];

    // 检查单元格是否包含日期格式
    if (cell.t === 'n' && XLSX.SSF.is_date(cell.z)) {
    
    
      // 将日期字段格式化为字符串日期
      const formattedDate = XLSX.utils.format_cell(cell, {
    
     dateNF: 'yyyy-mm-dd hh:mm:ss' });

      // 更新单元格的值为格式化后的日期字符串
      worksheet[cellAddress].v = formattedDate;
    }
  }
}

// 将工作表转换为JSON对象
const jsonData = XLSX.utils.sheet_to_json(worksheet);

console.log(jsonData);

In diesem Beispiel verwenden wir weiterhin die readFile-Methode der XLSX-Bibliothek, um die Excel-Datei zu lesen.

Dann verwenden wir workbook.SheetNames[0], um den Namen des ersten Arbeitsblatts abzurufen, und rufen das entsprechende Arbeitsblattobjekt über workbook.Sheets[…] ab.

Als Nächstes durchlaufen wir alle Zellen im ersten Arbeitsblatt und prüfen mit der Methode XLSX.SSF.is_date, ob die Zelle ein Datumsformat enthält.

Wenn die Zelle im Datumsformat vorliegt, verwenden wir die Methode XLSX.utils.format_cell, um das Datumsfeld in das angegebene String-Datumsformat zu formatieren.

Schließlich konvertieren wir das Blattobjekt mit der Methode XLSX.utils.sheet_to_json in ein JSON-Objekt und speichern das Ergebnis in der Variablen jsonData.

Sie können die jsonData nach Bedarf weiterverarbeiten, z. B. indem Sie sie in eine Datei schreiben oder andere Vorgänge ausführen.

おすすめ

転載: blog.csdn.net/weixin_43866250/article/details/132607575