키 = 값 방식으로 정보가 포함 된 텍스트 파일이 있습니다. 어떻게 키를 찾고 값을 반환할까요?문자열이 포함 된 텍스트 파일의 줄 반환
KeyOne=ValueOne
KeyTwo=ValueTwo
을 나는 KeyOne를 받아 ValueOne를 반환하는 방법을 가지고 싶다 :
예를 들어, 파일이있다 가정 해 봅시다.
키 = 값 방식으로 정보가 포함 된 텍스트 파일이 있습니다. 어떻게 키를 찾고 값을 반환할까요?문자열이 포함 된 텍스트 파일의 줄 반환
KeyOne=ValueOne
KeyTwo=ValueTwo
을 나는 KeyOne를 받아 ValueOne를 반환하는 방법을 가지고 싶다 :
예를 들어, 파일이있다 가정 해 봅시다.
좋아, 나는 좋은 분위기 :)에서 검증되지 않은 해요 :
//given that 'input' got the contents of the file
Map<String,String> m = new HashMap<String,String>();
//this can be done more efficient probably but anyway
//normalize all types of line breaks to '\n'
input = input.replaceAll("\r\n","\n");
input = input.replaceAll("\r","\n");
//populate map
String[] lines = input.split("\n");
for(int i=0 ; i< lines.length; i++){
String[] nv = lines[i].split("=");
m.put(nv[0],nv[1]);
}
//get value given key:
String key = "somekey";
String someValue = m.get(key);
System.out.println(someValue);
Scanner s = new Scanner("Filename");
Map<String, String> m = new HashMap<String, String>();
while(s.hasNext()){
String line[] = s.nextLine().split("=");
m.put(line[0], line[1]);
}
이 값을 얻으려면 : 방법
m.get(ValueOne);
전체 무리. 당신은 할 수있다
a. 파일을 한 줄씩 읽은 다음 입력을 분리하고지도를 채 웁니다.
b. 정규식 검색을 파일 전체에 적용하십시오.
c. 전체 텍스트 검색을 색인화 할 수 있습니다.
모두 사용 사례에 따라 다릅니다. 문맥을 이해하지 않고 접근법을 추천하는 것은 어렵다.
당신이 필요로하는 것은 이름 - 값 쌍을 읽는 것 뿐이며, 이것이 설정 특성의 것이라면 Java에서 속성 파일을 사용하는 것을 고려할 수 있습니다.
이것을 확인할 수 있습니다. http://www.mkyong.com/java/java-properties-file-examples/
게시하기 전에 시도해 봤어? – Blender
Java의 속성 파일을 살펴보십시오. 키 - 값 파일은 그 (것)들과 비슷합니다. http://docs.oracle.com/javase/6/docs/api/java/util/Properties.html –