Java 如何在Android中获取字符串数组的长度?
我试着像这样从拆分字符串中获取字符串数组的长度Java 如何在Android中获取字符串数组的长度?,java,android,string,split,inputstream,Java,Android,String,Split,Inputstream,我试着像这样从拆分字符串中获取字符串数组的长度 tombol.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { String isi=""; try{ InputStream inputstream=getAssets().open("test.txt");
tombol.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
String isi="";
try{
InputStream inputstream=getAssets().open("test.txt");
int size=inputstream.available();
byte[] buffer=new byte[size];
inputstream.read(buffer);
isi=new String(buffer);
}
catch(IOException e){
e.printStackTrace();
}
String[] isiv2=isi.split("\n");
int size=isiv2.length;
txt.setText(size);
}
});
我把绳子劈开,想把它的长度插进去
String[] isiv2=isi.split("\n");
int size=isiv2.length;
txt.setText(size);
但它返回一个错误
android.content.res.Resources$NotFoundException:字符串资源ID 0x4
我做错了什么?您使用
txt.setText(size);
这将尝试执行
这会将大小解释为资源id,而不显示整数
当你使用
txt.setText(String.valueOf(size));
它将大小作为字符串传递,调用该字符串将大小显示为字符串。您发布的错误很可能不是由您发布的代码引起的。它是由他提供的代码引起的。注意:不要这样编写代码。取决于前一个try块中代码成功与否的代码应该在该try块中。并且不要忽略read返回的值。它应该是int count=inputstream.readbuffer;isi=新Stringbuffer,计数@这是由我发布的代码引起的谢谢你的解释,我会记得我没有意识到这一点。谢谢问题解决