70

这似乎是一个愚蠢的问题,但我一直在寻找并找不到答案。

我正在创建一个 android 应用程序,其中有一个按钮可以在电子邮件中发送一些信息,我不想将所有内容都放在一个段落中。

这是我的应用程序为电子邮件正文的 putExtra 所做的事情:

I am the first part of the info being emailed. I am the second part. I am the third part.

这就是我想要它做的事情:

I am the first part of the info being emailed.
I am the second part.

I am the third part.

我如何将新行放入字符串或使用 putExtra 方法来完成?

谢谢你。

4

5 回答 5

100

尝试:

String str = "my string \n my other string";

打印后您将获得:

my string
my other string

于 2011-08-24T14:04:45.410 回答
89

尝试使用System.getProperty("line.separator")来获取新行。

于 2011-06-17T00:13:07.573 回答
25

我个人更喜欢使用“ \n ”。这只是在 Linux 或 Android 中换行。

例如,

String str = "I am the first part of the info being emailed.\nI am the second part.\n\nI am the third part.";

输出

I am the first part of the info being emailed.
I am the second part.

I am the third part.

更通用的方法是使用,

System.getProperty("line.separator")

例如,

String str = "I am the first part of the info being emailed." + System.getProperty("line.separator") + "I am the second part." + System.getProperty("line.separator") + System.getProperty("line.separator") + "I am the third part.";

带来与上面相同的输出。在这里,类的静态getProperty()方法System可用于获取line.seperator特定操作系统的“”。

但这根本没有必要,因为这里的操作系统是固定的,即Android。所以,每次调用一个方法都是一个繁重且不必要的操作

此外,这也会增加你的代码长度,让它看起来有点乱。“\n”既甜美又简单。

于 2015-07-21T17:32:32.897 回答
9

<br>CDATA标签中使用。例如,我的 strings.xml 文件包含这样的项目:

<item><![CDATA[<b>My name is John</b><br>Nice to meet you]]></item>

并打印

My name is John
Nice to meet you
于 2018-03-22T17:54:04.333 回答
0

如果您想在运行时将换行符添加到来自相同字符串的字符串中,那么您正在派生该值,那么这个 Kotlin 代码对我有用:

str = "<br>"+str?.replace("," , "</br><br>")+"</br>"
value = HtmlCompat.fromHtml(${skill_et_1}",Html.FROM_HTML_MODE_LEGACY)
tv.text = value
于 2021-06-15T18:10:02.713 回答