2017-05-18 1 views
0

내 APP Android에 문제가 있습니다. 내 대답은 아주 간단합니다. 인증을위한 로그인 화면입니다.Android에서 BufferedReader의 첫 번째 빈 문자가

내 문제는 BufferedReader로 데이터를 읽을 때 올바르게 읽지 않는다고 생각합니다. String의 첫 번째 값은 항상 비어 있기 때문입니다.

BufferedReader reader = new BufferedReader(new InputStreamReader(is,"UTF-8")); 
StringBuilder sb = new StringBuilder(); 
String line = null; 
while ((line = reader.readLine()) != null) 
{ 
    sb.append(line); 
} 
is.close(); 
String vIdEmpleado = sb.toString(); 

내 PHP 파일을 반환하는 값은 다음과 같습니다. idEmployee (있는 경우) 및 "0"(없는 경우). 하지만 나를 돌려주는 값은 항상이 문자를 첫 번째 위치 ('\ uFEFF')에 포함합니다.

enter image description here

는 다음 나는 idEmployee.equals는 ("0") ... 잘못을합니까 수행 할 때.

if (vIdEmpleado.equals("0")) 
{ 
    return false; 
} 
else 
{ 
    return true; 
} 

나는 idEmployee.substring (1)을 사용하기로 선택한,하지만 난 그것을 프로그램 할 수있는 가장 올바른 방법이라고 생각하지 않습니다.

내가 사용 : 안드로이드 (자바)와

  • 로그인 화면.
  • WebService : 저는 localhost에서 XAMPP를 사용합니다. 내 데이트베이스
  • 리더 : PHP
  • 데이터베이스 : MySQL의

누구나 어떤 아이디어가?

당신이 내 코드를 작성하기 위해 내가 필요하면 ... 그것은

미리 주셔서 감사 문제를하지 않습니다.

+0

내 대답을 확인하시기 바랍니다하려고 그런 기능 제거 공간

String vIdEmpleado = sb.toString.trim(); 

를 잘라보십시오. –

답변

0

이 하나

if (vIdEmpleado.contains("0")) 
{ 
    return true; 
} 
else 
{ 
    return false; 
} 
+0

나는 이미 그것에 대해 생각했지만 작동하지 않습니다. –

+0

@ EnricSauret 업데이트 된 답변을 확인하십시오. –

+0

아주 이상합니다. 표현식을 평가하고이를 반환하기 때문에 IF에 들어 가지 않습니다. 그러나 이것은 SUBSTRING과 유사한 솔루션입니다. 그리고 이것이 왜 발생하는지 알고 싶습니다. 감사합니다! –

관련 문제