[React] 엑셀 업로드 기능

민갱·2023년 8월 10일
1

React

목록 보기
15/20

엑셀 업로드 생각보다 간단하네,,,ㅎㅎ



const [uploadedFile, setUploadedFile] = useState(null);

  const handleDrop = useCallback(async (acceptedFiles) => {
    if (acceptedFiles.length > 0) {
      const file = acceptedFiles[0];

      const reader = new FileReader();
      reader.onload = async (e) => {
        const data = new Uint8Array(e.target.result);
        const workbook = XLSX.read(data, { type: "array", bookVBA: true });

        const sheetName = workbook.SheetNames[0];
        const sheet = workbook.Sheets[sheetName];
        const jsonData = XLSX.utils.sheet_to_json(sheet);

        setUploadedFile({ file, jsonData });
      };

      reader.readAsArrayBuffer(file);
    }
  }, []);


return(
    <h2>Excel 파일 업로드</h2>
      <input
        type="file"
        accept=".xlsx, .xls, .csv"
        onChange={(e) => handleDrop(e.target.files)}
      />

)
  • bookVBA: true

이 옵션이 없어 글자가 깨져 나왔다.

profile
가보자고

0개의 댓글

관련 채용 정보