【发布时间】:2018-11-08 14:35:44
【问题描述】:
我目前正在开发 Android Studio。 我想从资产文件夹中读取一个文件,但它给了我这个错误。有人遇到过这个问题吗?
java.lang.IllegalArgumentException: n <= 0: 0
这是我的代码:
private String getRandomDataFromCategory(String name/* @param for the name of text file*/){
readings = "";
StringBuffer stringBuffer = new StringBuffer();
String[] temp;
try{
//getting file from asset folder
InputStream inputStream = getAssets().open(name + ".txt",AssetManager.ACCESS_BUFFER);
int size = inputStream.available();
byte[] buffer = new byte[size];
inputStream.read(buffer);
inputStream.close();
stringBuffer.append(new String(buffer));
// to check if stringBuffer isn't empty
if (stringBuffer.length() != 0){
//spliting stringBuffer
temp = stringBuffer.toString().split("\\`");
Random random = new Random();
// to create random index of array temp
int a = random.nextInt(temp.length - 1);
readings = temp[a];
}
}catch (Exception e) {
Toast.makeText(gaming.this, e.toString(),Toast.LENGTH_SHORT).show();
}
return readings;
}
这篇文章和这篇文章有些相似 Android Random Number llegalArgumentException: n <= 0: 0 还是不一样的
【问题讨论】: