2013-04-26 2 views
0

Мне нужно отобразить строку, которая содержит много новой строки '\ n'.Эта должна быть заменена фактическими символами новой строки в этой строке. Как я могу это сделать в Android?Как заменить новые символы строк на новые строки в строке в android?

+0

Я немного смущен, почему вы заменяете его пустыми строками. Вы просто удаляете символы '\ n'? Если вам нужны новые строки, вы не должны удалять '\ n'. –

+0

, где вы хотите отобразить новую строку? В TextView? или где-то еще? – cakil

+0

Привет У меня есть строка str = "Это тестирование \ nКак вы?" и когда я устанавливаю его в textview, он отображает строку так, как она есть, но «как вы» не переходите к следующей строке ..... то есть в текстовом виде она показывает «Это тестирование \ nКак вы?» – user1448108

ответ

0
String myString = "lots of \n new \n lines"; 
String newStringWithoutNewLines = myString.replace("\n", ""); 
0

вы должны сцепить оператор новой строки, как:

String str = "This is testing" + "\n" + "How are you?"; 

вы сказали, из базы данных можно разделить как:

String[] separated = str.split("\n"); 
separated[0]; // this will contain "This is testing" 
separated[1]; // this will contain "How are you?" 

, а затем объединить их

+0

Привет, строковые данные поступают из базы данных ... так что я не могу так конкатенировать – user1448108

+0

Строка из базы данных вроде этого? «Это тестирование \ nКак вы?» – JRowan

+0

да это образец строки, которую я показываю ... но исходный текст содержит много pf \ n символов в нем – user1448108

0

То, что кажется происхождение - это строка, которую вы получаете из своей базы данных, содержит не новый символ строки, а символ charac ters \ и n. Самым простым способом исправить это использовать просто функцию String.replace заменить последовательность символов \n характером \n так:

String str = getStringWithFakeNewlines(); 
str.replace("\\n", "\n"); // The first backslash is doubled to find actual backslashes 
1

Вы можете использовать это ..

StringWriter stringWriter = new StringWriter(); 
PrintWriter writer = new PrintWriter(stringWriter, true); 
writer.println("line1"); 
writer.println("line2"); 
writer.println("line3"); 
useString(stringWriter.toString()); 

line1, line2 and line3 будут напечатаны в отдельных строках ,

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