2015-04-14 3 views
3

Эй, ребята сейчас в моей Java У меня есть строка, которая идет как это в моем LogCatРазбивает строку в Java для PHP

24:John Smith 
    Contact Number: 999999999 
    Customer Address: Texas 47 
    Store: Subway 
    Time Frame: 4:00pm - 5:00pm 
    Request: One sandwhich 
    SMS ID: 2493 
    Job Submitted at: 2015-03-14 18:27:45 

И я назначил SMS ID в строку переменной smsCode со следующим кодом:

smsCode = str.split("SMS ID: ")[1].split("Job Submitted at: ")[0]; 

И в моем LogCat это показывает, что smsCode будет равна 2493 Однако, когда я передать переменную в PHP не работает. Это может быть связано с расстоянием. Я использовал smsCode.trim(), и он не работает.

Это работает, если я ставлю в реальном выражении без переменной:

nameValuePairs.add(new BasicNameValuePair("smsCode", "2493")); 

Это не когда его переменной, как показано ниже.

nameValuePairs.add(new BasicNameValuePair("smsCode", smsCode)); 

ответ

1

Вопрос заключается в том, что в первом примере, где используется жесткий кодированный значение, вы Infact передавая только, что значение текста.

Во втором примере, с использованием переменных smsCode фактически не содержит значение, которое вы думаете, что делает, после предыдущих строк текста - smsCode в данный момент на самом деле имеет текстовое значение 2493\n.

Попробуйте сделать так, как уже было предложено, и добавьте \n к вашему второму расколу, чтобы удалить лишний символ новой строки.

0

Попробуйте?

smsCode = str.split("SMS ID: ")[1].split("\nJob Submitted at: ")[0]; 
+2

Пожалуйста, включите некоторое объяснение того, что вы исправили или как это работает, а не просто отправьте фрагмент кода. – ssube

1

Попробуйте это:

smsCode = str.split("SMS ID: ")[1].split("Job Submitted at: ")[0].replaceAll("\\r|\\n", ""); 
Смежные вопросы