Notice
Recent Posts
Recent Comments
Link
투케이2K
859. (Android/Java) [jsch] SFTP 라이브러리 - 원격 서버 파일 삭제 수행 실시 - deleteFile 본문
Android
859. (Android/Java) [jsch] SFTP 라이브러리 - 원격 서버 파일 삭제 수행 실시 - deleteFile
투케이2K 2024. 9. 1. 09:50[개발 환경 설정]
개발 툴 : AndroidStudio
개발 언어 : Java / Kotlin
[소스 코드]
// ------------------------------------------------------------------------------------------
// TODO [SFTP 서버 파일 삭제 수행]
// ------------------------------------------------------------------------------------------
// TODO [라이브러리 설치 버전] : implementation group: 'com.jcraft', name: 'jsch', version: '0.1.54'
// ------------------------------------------------------------------------------------------
public synchronized boolean deleteFile(String sftpPath, String sftpFileName) {
S_Log._D_("SFTP 서버 파일 삭제 수행", new String[]{ "sftpPath :: " + String.valueOf(sftpPath), "sftpFileName :: " + String.valueOf(sftpFileName) });
/*
D ===================================================================
[LOG :: CLASS PLACE :: com.example.javaproject.C_Module.C_SFTP_Client_Module.deleteFile(C_SFTP_Client_Module.java:705)]
----------------------------------------------------
[LOG :: NOW TIME :: 2024-08-31 13:34:44 토요일]
----------------------------------------------------
[LOG :: DESCRIPTION :: SFTP 서버 파일 삭제 수행]
----------------------------------------------------
[LOG :: sftpPath :: /test]
----------------------------------------------------
[LOG :: sftpFileName :: log.txt]
D ===================================================================
D ===================================================================
[LOG :: CLASS PLACE :: com.example.javaproject.C_Module.C_SFTP_Client_Module.deleteFile(C_SFTP_Client_Module.java:731)]
----------------------------------------------------
[LOG :: NOW TIME :: 2024-08-31 13:34:44 토요일]
----------------------------------------------------
[LOG :: DESCRIPTION :: SFTP 서버 파일 리스트 확인]
----------------------------------------------------
[LOG :: [dr-xr-xr-x 19 root root 4096 Jul 3 15:13 .., -rw-r--r-- 1 root root 2 Aug 31 12:24 log.txt, drwxr-xr-x 2 root root 4096 Aug 31 12:24 .]]
D ===================================================================
D ===================================================================
[LOG :: CLASS PLACE :: com.example.javaproject.C_Module.C_SFTP_Client_Module.deleteFile(C_SFTP_Client_Module.java:749)]
----------------------------------------------------
[LOG :: NOW TIME :: 2024-08-31 13:34:44 토요일]
----------------------------------------------------
[LOG :: DESCRIPTION :: SFTP 서버 파일 삭제 수행 성공]
----------------------------------------------------
[LOG :: SFTP Path :: /test/log.txt]
D ===================================================================
// */
// [리턴 변수 선언]
boolean result = false;
// [로직 처리 수행]
try {
if (mMainCtx != null && isConnection == true){
if (channelSftp.isConnected() == true == true){
if (C_Util.stringNotNull(sftpPath) == true && C_Util.stringNotNull(sftpFileName) == true){
// [해당 원격 경로 이동 수행]
channelSftp.cd(sftpPath);
// [저장 된 파일 목록 확인]
Vector<ChannelSftp.LsEntry> fileAndFolderList = channelSftp.ls(sftpPath);
S_Log._W_("SFTP 서버 파일 리스트 확인", new String[]{String.valueOf(fileAndFolderList)});
if (String.valueOf(fileAndFolderList).contains(sftpFileName) == true){
// [원격 파일 경로 확인]
String sftpPathFile = sftpPath;
if (sftpPath.endsWith("/") == true){
sftpPathFile += sftpFileName;
}
else {
sftpPathFile += "/" + sftpFileName;
}
// [SFTP 서버 파일 삭제 수행]
channelSftp.rm(sftpPathFile);
result = true; // [리턴 변수 삽입]
S_Log._W_("SFTP 서버 파일 삭제 수행 성공", new String[]{ "SFTP Path :: " + String.valueOf(sftpPathFile) });
}
else {
S_Log._E_("SFTP 서버 파일 삭제 에러 발생", new String[]{ "Error :: Sftp File List Not Found" });
}
}
else {
S_Log._E_("SFTP 서버 파일 삭제 에러 발생", new String[]{ "Error :: Input Data Is Null" });
}
}
else {
S_Log._E_("SFTP 서버 파일 삭제 에러 발생", new String[]{ "Error :: channelSftp.isConnected() == false" });
}
}
else {
S_Log._E_("SFTP 서버 파일 삭제 에러 발생", new String[]{ "Error :: mMainCtx Is Null or channelSftp Not Null or isConnection false" });
}
}
catch (Exception e){
e.printStackTrace();
}
// [리턴 결과 반환]
return result;
}
반응형
'Android' 카테고리의 다른 글
Comments