2013-04-09 3 views
0

Я получаю исключение URISyntaxException при попытке сделать следующее. Я абсолютно не знаю, что вызывает проблему. было бы неплохо получить некоторую помощь. Ошибка находится в последней строкеURISyntaxException при попытке построить ссылку httpget

EditText edUserName = (EditText)findViewById(R.id.textBox_username_register); 
    String strUsernameTemp = edUserName.getText().toString(); 
    byte[] byteUsernameTemp = null; 
    try 
    { 
     byteUsernameTemp = strUsernameTemp.getBytes("UTF-8"); 
    } 
    catch(UnsupportedEncodingException e) 
    { 
     e.printStackTrace(); 
    } 
    String strUsername = Base64.encodeToString(byteUsernameTemp, Base64.DEFAULT); 

    EditText edPassword = (EditText)findViewById(R.id.passwordBox_password_register); 
    String strPasswordTemp = edPassword.getText().toString(); 
    byte[] bytePasswordTemp = null;  
    try 
    { 
     bytePasswordTemp = strPasswordTemp.getBytes("UTF-8"); 
    } 
    catch(UnsupportedEncodingException e) 
    { 
     e.printStackTrace(); 
    } 
    String strPassword = Base64.encodeToString(bytePasswordTemp, Base64.DEFAULT);  

    EditText edEmail = (EditText)findViewById(R.id.textBox_email_register); 
    String strEmailTemp = edEmail.getText().toString(); 
    byte[] byteEmailTemp = null; 
    try 
    { 
     byteEmailTemp = strEmailTemp.getBytes("UTF-8"); 
    } 
    catch(UnsupportedEncodingException e) 
    { 
     e.printStackTrace(); 
    }  
    String strEmail = Base64.encodeToString(byteEmailTemp, Base64.DEFAULT);  

    String strD = "22"; 
    String strM = "11"; 
    String strY = "1993"; 
    StringBuilder builder = new StringBuilder(); 
    HttpClient client = new DefaultHttpClient();   
    HttpGet httpget = new HttpGet(loginData.strAPIURL + "addUser&username=" + strUsername + "&password=" + strPassword + "&email=" + strEmail + "&d=" + strD + "&m=" + strM + "&y=" + strY); // this line causes the error 
+0

Можно ли разместить значение 'loginData.strAPIUR'? –

ответ

0

URISyntaxException обычно брошенной, если некоторая информация не может быть разобран при создании URI. Попробуйте кодировать URI с помощью URLEncoder.

String encodedURI = java.net.URLEncoder.encode(loginData.strAPIURL + "addUser&username=" + strUsername + "&password=" + strPassword + "&email=" + strEmail + "&d=" + strD + "&m=" + strM + "&y=" + strY,"UTF-8"); 
HttpGet httpget = new HttpGet(encodedURI); 
+0

Спасибо, что решил мою проблему :) –

Смежные вопросы