我有一个总是这样的字符串:
data
data
data
data
non-data
non-data
我需要从中删除最后两行。这些线的长度可以不同。我怎么能这么快(String = ~1000行)?
答案 0 :(得分:3)
我会说:
String[] lines = input.split("\n");
String[] dataLines = Arrays.copyOfRange(lines, 0, lines.length - 2);
答案 1 :(得分:2)
int lastNewLineAt = string.lastIndexOf("\n");
string.subString(0, string.lastIndexOf("\n", lastNewLineAt));
您可以将常量用于新行字符读取系统属性
答案 2 :(得分:0)
此代码将您的文本拆分为“\ n”,这意味着您的行将进入字符串数组。 比你得到那个数组的长度..
在for循环中,您将设置并将文本追加到长度为1的元素。
这可能是一个很长的方法,但我正在搜索这个,我找不到任何东西。 这是我最简单的方法。
String[] lines = YourTextViev.getText().toString().split("\n");
YourTextView.setText(""); // clear your TextView
int Arraylength = lines.length-1; // Changing "-1" will change which lines will be deleted
for(int i=0;i<Arraylength;i++){
YourTextView.append(lines[i]+"\n");
}