Java에서 파일의 파일 확장자를 얻는 방법
-
Java에서
getExtension()
메소드를 사용하여 파일 확장자 가져 오기 -
Java에서
lastIndexOf()
메서드를 사용하여 파일의 파일 확장자 가져 오기 - Java에서 문자열 구문 분석을 사용하여 파일의 파일 확장자 가져 오기
-
Java에서
replaceAll()
메소드를 사용하여 파일의 파일 확장자 가져 오기 -
Java에서
contains()
및lastIndexOf()
메서드를 사용하여 파일의 파일 확장자 가져 오기 -
Java에서
삼항 연산자
를 사용하여 파일의 파일 확장자 가져 오기 -
Java에서
stream()
메소드를 사용하여 파일의 파일 확장자 가져 오기 - Java에서 Regex를 사용하여 파일 확장명 가져 오기
이 튜토리얼에서는 Java에서 파일 확장자를 가져 오는 방법을 소개하고 주제를 이해하기위한 몇 가지 예제 코드도 나열합니다.
Java에서getExtension()
메소드를 사용하여 파일 확장자 가져 오기
파일의 확장자를 얻으려면FilenameUtils
클래스의getExtension()
메소드를 사용할 수 있습니다. 이 메서드는 파일의 확장자를 반환합니다. 이 메소드는Apache
공용 라이브러리에 속하므로 프로젝트에서 JARs을 사용하려면 Apache
공식 사이트에서 라이브러리를 다운로드해야합니다.
import org.apache.commons.io.FilenameUtils;
public class SimpleTesting {
public static void main(String[] args) {
String fileName = "student-records.pdf";
String fe = FilenameUtils.getExtension(fileName);
System.out.println("File extension is : " + fe);
}
}
출력:
File extension is : pdf
Java에서lastIndexOf()
메서드를 사용하여 파일의 파일 확장자 가져 오기
내장 메서드를 사용하지 않으려면lastIndexOf()
메서드를 사용하는 주어진 코드 예제를 사용하여 파일 확장자를 가져옵니다. 문자열 메서드 만 포함하는 가장 간단하고 쉬운 방법입니다. 아래 예를 참조하십시오.
public class SimpleTesting {
public static void main(String[] args) {
String fileName = "student-records.pdf";
String fe = "";
int i = fileName.lastIndexOf('.');
if (i > 0) {
fe = fileName.substring(i + 1);
}
System.out.println("File extension is : " + fe);
}
}
출력:
File extension is : pdf
Java에서 문자열 구문 분석을 사용하여 파일의 파일 확장자 가져 오기
이것은 하나를 포함한 여러 시나리오를 포함하는 또 다른 솔루션입니다 (dot(.)
가 파일 경로에있는 경우). 이 메서드는 파일 경로 사이에 점 (.
)이 있더라도 정확한 결과를 반환합니다. 아래 예를 참조하십시오.
public class SimpleTesting {
public static void main(String[] args) {
String fileName = "folder\s.gr\fg\student-records.pdf";
String fe = "";
char ch;
int len;
if (fileName == null || (len = fileName.length()) == 0 || (ch = fileName.charAt(len - 1)) == '/'
|| ch == '\\' || ch == '.') {
fe = "";
}
int dotInd = fileName.lastIndexOf('.'),
sepInd = Math.max(fileName.lastIndexOf('/'), fileName.lastIndexOf('\\'));
if (dotInd <= sepInd) {
fe = "";
} else {
fe = fileName.substring(dotInd + 1).toLowerCase();
}
System.out.println("File extension is : " + fe);
}
}
출력:
File extension is : pdf
Java에서replaceAll()
메소드를 사용하여 파일의 파일 확장자 가져 오기
replaceAll()
메소드를 사용하여 아래 예제에서했던 것처럼 파일 확장자를 얻을 수 있습니다. 이 방법에서는 정규식을 사용하고 그 결과를 변수로 수집합니다.
public class SimpleTesting {
public static void main(String[] args) {
String fileName = "folder\s.gr\fg\student-records.pdf";
String fe = "";
fe = fileName.replaceAll("^.*\\.(.*)$", "$1");
System.out.println("File extension is : " + fe);
}
}
출력:
File extension is : pdf
Java에서contains()
및lastIndexOf()
메서드를 사용하여 파일의 파일 확장자 가져 오기
contains()
메소드는 지정된 문자가 문자열에 있는지 여부를 확인하는 데 사용되며lastIndexOf()
메소드는substring()
메소드에 전달 된 지정된 문자의 인덱스 값을 반환하여 가져옵니다. 파일 확장자. 이 코드에서 이러한 메서드를 사용하여 파일 확장자를 얻습니다. 아래 예를 참조하십시오.
public class SimpleTesting {
public static void main(String[] args) {
String fileName = "folder\s.gr\fg\student-records.pdf";
String fe = "";
if (fileName.contains("."))
fe = fileName.substring(fileName.lastIndexOf(".") + 1);
System.out.println("File extension is : " + fe);
}
}
출력:
File extension is : pdf
Java에서삼항 연산자
를 사용하여 파일의 파일 확장자 가져 오기
삼항 연산자 (?, :
)에 익숙하다면substring()
및lastIndexOf()
메서드와 함께 사용하십시오. 코드 줄을 줄이고 결과를 단일 문으로 반환합니다.
public class SimpleTesting {
public static void main(String[] args) {
String fileName = "folder\s.gr\fg\student-records.pdf";
String fe = "";
if (fileName.contains(".")) {
int i = fileName.lastIndexOf('.');
fe = i > 0 ? fileName.substring(i + 1) : "";
}
System.out.println("File extension is : " + fe);
}
}
출력:
File extension is : pdf
Java에서stream()
메소드를 사용하여 파일의 파일 확장자 가져 오기
Arrays
클래스의stream()
메서드를 사용하여 파일 이름을 스트림으로 변환하고split()
메서드를 사용하여 dot (.
)에서 파일 이름을 분리 할 수 있습니다. 아래 예를 참조하십시오.
import java.util.Arrays;
public class SimpleTesting {
public static void main(String[] args) {
String fileName = "folder\s.gr\fg\student-records.pdf";
String fe = "";
if (fileName.contains(".")) {
fe = Arrays.stream(fileName.split("\\.")).reduce((a, b) -> b).orElse(null);
}
System.out.println("File extension is : " + fe);
}
}
출력:
File extension is : pdf
Java에서 Regex를 사용하여 파일 확장명 가져 오기
이것은regex
패키지를 사용하는 또 다른 솔루션입니다. 이 Java 예제에서는 Pattern
클래스의 compile()
및 matcher()
메서드를 사용하여 파일 확장자를 가져옵니다. 아래 예를 참조하십시오.
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class SimpleTesting {
public static void main(String[] args) {
String fileName = "folder\s.gr\fg\student-records.pdf";
String fe = "";
final Pattern PATTERN = Pattern.compile("(.*)\\.(.*)");
Matcher m = PATTERN.matcher(fileName);
if (m.find()) {
fe = m.group(2);
}
System.out.println("File extension is : " + fe);
}
}
출력:
File extension is : pdf
관련 문장 - Java IO
- Java에서 텍스트 파일에 텍스트 추가
- Java의 상대 경로
- Java에서 Inputstream을 바이트 배열로 변환
- Java에서 InputStream을 문자열로 변환
- Java에서 폴더의 모든 파일을 읽는 방법