gpt4 book ai didi

java - 从文本中分割变量

转载 作者:行者123 更新时间:2023-12-01 17:36:29 25 4
gpt4 key购买 nike

这个方法运行异常,我没有找到原因。

private void loadTrace () {
BufferedReader reader = new BufferedReader(
new StringReader(logTextArea.getText()));



String str;


try {


while(reader != null)

{

str =reader.readLine();

String [] splitted = str.split("\\|");

String b = splitted[1].trim();
String c = splitted[2].trim();
String d = splitted[3].trim();
String Chemin;
String Type = "action" ;
String Description;
if (d!=null) {
Description=d;
}
else Description ="Afficher onglet";
if (c!= null) {
Chemin= b+"."+c;
}
else Chemin =b;
String trace =Type+" "+Description +" "+Chemin ;

ArrayList<String> p = new ArrayList<String>();

p.add(trace);
System.out.println(p);


}


}


catch(IOException e) {
e.printStackTrace();
}
}

最佳答案

在不知道异常的情况下,我可以猜测潜在的问题之一是在这些行中:-

String [] splitted = str.split("\\|");

String b = splitted[1].trim();
String c = splitted[2].trim();
String d = splitted[3].trim();

您正在访问 splitted 而不检查它是否为 null 或大小,因此如果 splitted 长度小于 3,您可能会遇到 ArrayIndexOutOfBound 异常。因此请以这种方式修改代码-

String [] splitted = str.split("\\|");
if(splitted!=null && splitted.length==3){
String b = splitted[0].trim();
String c = splitted[1].trim();
String d = splitted[2].trim();
}

关于java - 从文本中分割变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5750678/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com