[Error Handling]

๐Ÿ˜ก java.lang.IllegalStateException: Cannot get a STRING value from a NUMERIC cell ํ•ด๊ฒฐํ•˜๊ธฐ

ํŒกํŽ‘ํ 2023. 5. 9. 19:57
728x90

๐Ÿšจ Error :

  • ์•ก์…€ ํŒŒ์ผ์„ ํŒŒ์‹ฑ ํ•˜์—ฌ DB์— ๋„ฃ๋Š” ์ž‘์—…์„ ์ง„ํ–‰ ์ค‘์— ์œ„์˜ ์—๋Ÿฌ๋ฅผ ๋งŒ๋‚ฌ๋‹ค.

 


๐Ÿค“ ์›์ธ :

XSSFRow row = sheet.getRow(0); // ์—‘์…€ ์‹œํŠธ์˜ 0๋ฒˆ์งธ ํ–‰์„ ๊ฐ€์ ธ์˜จ๋‹ค.
row.getCell(1).getStringCellValue()); // 0๋ฒˆ์งธ ํ–‰์˜ 1๋ฒˆ์งธ ์…€์„ ๊ฐ€์ ธ์™€ ์ŠคํŠธ๋ง์œผ๋กœ ๋ณ€ํ™˜ํ•œ๋‹ค.

 ์—‘์…€์˜ ๋ฐ์ดํ„ฐ๋Š” ๊ธฐ๋ณธ์ ์œผ๋กœ NUMERIC, STRING ๋“ฑ์˜ ์…€ ์„œ์‹์ด ์ง€์ •๋˜์–ด ์žˆ๋‹ค. ์Šค์Šค๋กœ ๋งŒ๋“  ์—‘์…€ ํŒŒ์ผ์ด๋ผ๋ฉด ์…€ ์„œ์‹์„ ๋”ฐ๋กœ ์ •ํ•ด๋†“์„ ์ˆ˜ ์žˆ์ง€๋งŒ ์™ธ๋ถ€์—์„œ ๊ฐ€์ ธ์˜จ ์—‘์…€ ํŒŒ์ผ์„ ์ž๋ฐ”๋กœ ๋‹ค๋ฃจ๊ธฐ ์œ„ํ•ด์„œ๋Š” ์ž๋ฐ” ํ˜•์‹์˜ ํƒ€์ž… ๋ณ€ํ™˜์ด ํ•„์š”ํ•˜๋‹ค.

 

 ์—‘์…€์€ ์…€ ์„œ์‹์„ ์ง€์ •ํ•˜์ง€ ์•Š์œผ๋ฉด ์ž๋™์œผ๋กœ ์ธ์‹ํ•˜๋Š”๋ฐ ์ˆซ์ž๋งŒ ์žˆ๋Š” ๊ฒฝ์šฐ ๊ทธ๋Œ€๋กœ ์ˆซ์ž๋กœ ์ธ์‹ํ•œ๋‹ค. ๋”ฐ๋ผ์„œ ์œ„์˜ ์—๋Ÿฌ๋ฅผ ์˜ˆ์‹œ ์ฝ”๋“œ์— ๋Œ€์ž…ํ•˜๋ฉด 0๋ฒˆ์งธ ํ–‰์˜ 1๋ฒˆ์งธ ์…€์„ ์ŠคํŠธ๋ง์œผ๋กœ ๊ฐ€์ ธ์˜ค๊ณ  ์‹ถ์€๋ฐ ์…€ ์„œ์‹์„ ์ž๋™์œผ๋กœ NUMERIC์œผ๋กœ ์ธ์‹ํ•ด ์˜ค๋ฅ˜๊ฐ€ ๋‚œ ๊ฒƒ์ด๋‹ค.

 


๐Ÿš’ ํ•ด๊ฒฐ :

  •  ์œ„๋Š” Numbers(๋„˜๋ฒ„์Šค)์ง€๋งŒ ์—‘์…€๋„ ํฌ๊ฒŒ ๋‹ค๋ฅด์ง€ ์•Š๋‹ค. ๋จผ์ € ์—‘์…€์ด๋‚˜ ๋„˜๋ฒ„์Šค์—์„œ crtl + a(๋งฅ๋ถ์€ command + a)๋กœ ์ „์ฒด ์…€์„ ์„ ํƒ ํ›„ ์…€ ์„œ์‹์—์„œ ๋ฐ์ดํ„ฐ ํฌ๋งท์„ ์ž๋™์—์„œ ํ…์ŠคํŠธ๋กœ ๋ณ€๊ฒฝํ•˜๋ฉด ํ•ด๊ฒฐ๋œ๋‹ค.

โ€ป ๋งŒ์•ฝ NUMERIC ๋“ฑ ๊ธฐํƒ€ ์„œ์‹์„ ์ด์šฉํ•ด์•ผ ํ•œ๋‹ค๋ฉด ํ•„์š”ํ•œ ๋ถ€๋ถ„๋งŒ ๋”ฐ๋กœ ๋ณ€๊ฒฝํ•ด์ฃผ๋ฉด ๋œ๋‹ค.

 

 

(์ถ”๊ฐ€)

 ํ…์ŠคํŠธ๋กœ ๋ณ€๊ฒฝํ•ด๋„ ๊ฐ™์€ ์˜ค๋ฅ˜๊ฐ€ ๋ฐœ์ƒํ•˜๋Š” ๊ฒฝ์šฐ๊ฐ€ ์žˆ๋‹ค. ์ด์œ ๋Š” ๋ชจ๋ฅด๊ฒ ์œผ๋‚˜, ๋ถ„๋ช… ํ…์ŠคํŠธ๋กœ ์ง€์ •ํ–ˆ์Œ์—๋„ ๊ณ„์† NUMERIC์œผ๋กœ ์ฝํžˆ๋Š”๋ฐ ์ด๋Ÿด ๋•Œ ํ•ด๊ฒฐ ๋ฐฉ๋ฒ•์€ ๊ตฌ๊ธ€ ์Šคํ”„๋ ˆ๋“œ ์‹œํŠธ๋ฅผ ํ™œ์šฉํ•˜๋ฉด ๋œ๋‹ค. 

  • ์Šคํ”„๋ ˆ๋“œ ์‹œํŠธ์— ๊ทธ๋Œ€๋กœ ํŒŒ์ผ์„ ์—…๋กœ๋“œํ•˜๊ณ  ์œ„์˜ ๋ฐฉ๋ฒ•๊ณผ ๋งˆ์ฐฌ๊ฐ€์ง€๋กœ ์„œ์‹์„ ์ผ๋ฐ˜ ํ…์ŠคํŠธ๋กœ ๋‘”๋‹ค. ๊ทธ๋ฆฌ๊ณ  ๋ณ€๊ฒฝ๋œ ํŒŒ์ผ์„ ๋‹ค์‹œ ๋‹ค์šด๋กœ๋“œํ•˜์—ฌ ๊ทธ ํŒŒ์ผ์„ ํ™œ์šฉํ•˜๋ฉด ํ•ด๊ฒฐ๋œ๋‹ค.

 


๐Ÿค” ์˜๋ฌธ์  :

 ์—‘์…€๋กœ ์…€ ์„œ์‹์„ ๋ณ€๊ฒฝํ–ˆ์„ ๋•Œ ๋ณ€๊ฒฝ์„ ์ธ์‹ํ•˜์ง€ ๋ชปํ•˜๋Š” ๊ฒฝ์šฐ๊ฐ€ ์žˆ์—ˆ๋Š”๋ฐ ์™œ ๊ทธ๋Ÿฐ์ง€ ๋ชจ๋ฅด๊ฒ ๋‹ค. ์œ„์˜ ๋ฐฉ๋ฒ•์€ ํ˜น์‹œ ์—‘์…€์ด ๋ฌธ์ œ์ธ๊ฐ€ ํ•˜๊ณ  ๊ตฌ๊ธ€ ์Šคํ”„๋ ˆ๋“œ ์‹œํŠธ๋ฅผ ์‚ฌ์šฉํ–ˆ๋Š”๋ฐ(์—…๋กœ๋“œ -> ๋ณ€๊ฒฝ -> ๋‹ค์šด๋กœ๋“œ) ํ•ด๊ฒฐ๋˜์–ด ์ถ”๊ฐ€๋กœ ๊ธฐ๋กํ–ˆ๋‹ค.

728x90