在数组JAVA上保存txt

时间:2015-09-08 22:28:47

标签: java arrays

我有这段代码来读取和打印.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个等级,我需要将每个文件放在一个数组上来操纵它们

我需要帮助才能将它们放在阵列上

2 个答案:

答案 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(",");
    }