2014-07-10 3 views
1

프로그래밍에 익숙하지 않고 다음과 같은 이유로 aa가 bb와 같지 않은 이유를 알아낼 수 없습니다. 나는 설정의 텍스트 파일에서 파일 경로 문자열을 추출해야합니다. 나는 경로를 얻을 수 있도록 같은 문자열로 txt 파일에서 9 번째 줄에 읽기 : 인쇄 할 때 aa is: testpathJava가 파일 자체에서 문자열을 읽지 못함

출력을 인쇄 할 때

String content = new Scanner(new File("settingsfilepath.txt")).useDelimiter("\\Z").next(); 
String[] textStr = content.split("\n"); 

aa = textStr[9]; 
bb = "testpath"; 

    if(aa.equals(bb)){ 
     print("Contents of both strings are same"); 
    }else{ 
     print("Contents of strings are different"); 
    } 

print(textStr[9]); 
print(bb); 

OUTPUT을 bb is: testpath

결과 : "Contents of strings are different"

저장 함수를 사용할 때 문자열 bb와 같게 변수 aa가 필요합니다. [savefunction (filetype, filepath);]

somesavefunction (filetype, aa); 경로의 오류 문제

somesavefunction (filetype, bb); 이 작동

두 가지 유형의 문자열이 있습니까? 어쩌면 내가 텍스트 파일에서 문자열로 파일 경로에서 제대로 읽지 않을거야? 나는 그렇게 바보가 된 기분 :(내가 힘든 시간이 게시물에를 설명하려고했다으로이 질문은 의미가 있기를 바랍니다. 어떤 모든 도움을 주셔서 감사합니다.

+6

로 조건을 변경, 공백을 의심한다. 등호 (bb.trim())', 그것은 당신이 확신 공백 –

+0

있을 수 있습니다 'textStr [8]'이 필요하지 않습니까? – jrad

+0

트림 트릭을 했어! 나는 그 시간을 보냈다는 것을 믿을 수 없다. 너무 고마워, 나는 머리에 몇 빗질을 남겼다. – pauln91

답변

1

당신이`aa.trim()를 사용하여 시도 trim()를 사용하여 시도하고

aa.trim().equals(bb.trim()) 
+0

자르기는 공백 만 제거합니다. 오식? –

1

나는 당신이

System.out.printf("aa = '%s', bb = '%s'%n", aa, bb); 

I을 추천합니다 공백이 하나 개 또는 두 문자열에있다 생각한다. 9 라인을 가정

1

하는 배열은 0부터 시작하는 인덱스를 가지고 당신이 원하는, 당신은 8 배열 요소에 AA를 설정해야합니다.

aa = textStr[8]; 
관련 문제