마케팅IT
자바 엑셀 프로세스 죽이는 방법 cmd 명령어
xemaker
2023. 6. 28. 18:01
자바 코딩을 하는데 코드로 떠 있는 엑셀파일을 죽이고 싶었다.
일단 윈도우 cmd 창에서 하는 방법이다.
taskkill /f /im excel.exe
하니 close가 되었다.
설명을 좀 하면
/f : 프로세스를 강제로 종료
/im : 종료할 프로세스의 이미지 지정
help taskkill 하면 매뉴얼을 볼 수 있다.
추가로 떠 있는 메모장을 kill 하고 싶으면
taskkill /im notepad.exe
마찬가지로 엑셀도 구지 /f 안 넣어도 되더라. 그래서
taskkill /im excel.exe
해도 열려있던 엑셀이 닫혔다.
그럼 이제 자바에서 해본다.
Runtime.getRuntime().exec("taskkill /im excel.exe");
하면 닫힌다.
그런데 바로 닫히면 에러가 발생할 수 있으니 2초정도 시간을 준다.
Thread.sleep(2000);
결론은
Runtime.getRuntime().exec("taskkill /im excel.exe");
Thread.sleep(2000);
try(OutputStream fileOut = new FileOutputStream(excelFileName)){
workbook.write(fileOut);
}
Desktop.getDesktop().edit(new File(excelFileName));