我有这段代码来读取和打印.txt文件
public static void main(String [] arg) {
ArrayList<String> lista = new ArrayList<String>();
try {
Scanner scan = new Scanner( new File("c:\\Ps.txt") );
while( scan.hasNext() ) {
lista.add( scan.nextLine() );
}
scan.close();
}
catch(Exception e) {
e.printStackTrace();
}
String items[] = lista.toArray(new String[lista.size()]);
for(String item : items) {
System.out.println( item );
}
}
txt文件格式是这样的: 名,5,3,6,8,9
学生的名字和5个等级,我需要将每个文件放在一个数组上来操纵它们
我需要帮助才能将它们放在阵列上
答案 0 :(得分:0)
首先,您必须分开每一行。您可以使用String.split(String regex)
方法执行此操作,正则表达式是每个对象的分隔符:
String[] splits = item.split(","); //item's properties are separated by commas
这将返回一个String
数组,其中包含“name”,“5”,“3”,“6”,“8”和“9”。
如果您想将成绩转换为int
,则可以使用Integer.parseInt(String integer)
方法执行此操作:
for (int i = 1; i < splits.length; i++) { // i = 1 because the index 0 is for the name
grades.add(Integer.parseInt(splits[i]));
}
PD:您可以使用Scanner
(用于名称)和next()
(用于成绩)方法直接对<Grid>
<Border Background="#000000" Opacity="0.7" />
<ContentPresenter ... />
</Grid>
执行此操作。要设置分隔符,请使用nextInt()
。
答案 1 :(得分:0)
您可以使用String Class split()方法将等级和标记转换为字符串数组,如下所示:
for(String item : items) {
String[] details = item.split(",");
}