如何在android中限制字符串长度?

Seh*_*Lee 4 android

假设我下面有一个字符串.

"这是我的字符串等等等等等等等等等等等等等等等等等等等等
等等等等等等等等等等等等等等等等等等等等等等等等等等等等等等
等等等等等等等等等等等等等等等等等等"

我只想展示"这是我的字符串"部分,并剪切"blah"部分.

所以...我想把我的字符串作为"这是我的字符串"并且不想这样做

把我的字符串显示为"这是我的字符串等等等等等等等等".

反正有没有在android中削减或限制String值?

kos*_*osa 20

将字符串子串到50个字符,返回前50个字符

你可能需要这样的东西:

 String s = blahString.substring(0,50);
Run Code Online (Sandbox Code Playgroud)

然后将它们设置为您的文本框:

yourText.setText(s);
Run Code Online (Sandbox Code Playgroud)

  • 如果string短于50个字符 - 它会抛出StringIndexOutOfBoundsException使用:`String s = blahString.substring(0,Math.min(99,blahString.length() - 1));` (5认同)

Kum*_*bek 7

如果文本长于视图,则可以使用ellipsize for TextViews截断文本.在这种情况下,您不需要硬编码50个字符的限制.

http://developer.android.com/reference/android/widget/TextView.html#attr_android:ellipsize


Ray*_* Li 6

标记为正确的答案很差,不应使用。如果提供的字符串小于子字符串范围,则代码将崩溃。首先检查字符串是否超过了要缩短的长度。

public static String truncate(String str, int len) {
if (str.length() > len) {
  return str.substring(0, len) + "...";
} else {
  return str;
}}
Run Code Online (Sandbox Code Playgroud)