본문 바로가기
이카루스의 날개/JAVA

파일 삭제 및 특수문자 필터링

by 윙혼 2007. 1. 29.

파일 삭제시 Runtime을 이용하는 방법1

if(result){
 Runtime rt = Runtime.getRuntime();
 String cmd = "rm -rf /web_data/DIR" + dirId + "/" + f_name;
 try{
  rt.exec(cmd);
 }catch(IOException ex){
  System.out.println(ex);
 }
}


파일 삭제시 Runtime을 이용하는 방법2

private void delImages(String fileAlias){
 String[] dir = { "/data/www/app/album/photo/",
  "/data/www/app/album/photo/listImages/",
  "/data/www/app/album/photo/viewImages/" };
 try{
  String[] cmd = new String[3];
  cmd[0] = "rm";
  cmd[1] = "-rf";
  Runtime rt = Runtime.getRuntime();
  for(int i=0;i<dir.length;i++){
   cmd[2] = dir[i]+fileAlias;
   rt.exec(cmd);
  }
 }catch(Exception e){
  e.printStackTrace();
  System.out.println("파일을 삭제하는 중 에러발생");
 }
}


파일 확장자 검사하는 법1

String fileType = name.substring(name.lastIndexOf(".") + 1);
fileType = fileType.toLowerCase();
if(fileType.equals("php") || fileType.equals("php3") || fileType.equals("cgi") || fileType.equals("jsp") || fileType.equals("java")){
 name = name.substring(0, name.lastIndexOf(".")+1) + "txt";
}


파일 확장자 검사하는 법2

String 클래스의 endsWith(String  suffix)함수와 toLowerCase()를 사용한다.


검색시 특수문자 걸러내는 법

String keyWord      = StringUtil.getParameter(request.getParameter("keyWord"));
char[] arrStat = keyWord.toCharArray();
StringBuffer sb = new StringBuffer();
for (int i=0; i<arrStat.length; i++){
 if ((arrStat[i] >= 32 && arrStat[i] <= 47)||(arrStat[i] >= 58 && arrStat[i] <= 64) || (arrStat[i] >= 91 && arrStat[i] <= 96) ||
  (arrStat[i] >= 123 && arrStat[i] <= 126)) sb.append("");
 else
  sb.append(arrStat[i]);
 }
keyWord = sb.toString();


댓글