2016-04-16 78 views
-1

我是java的新手,但沒有編碼。我想弄清楚java,因爲它是我這個學期的一部分,而且我有一個非常難以理解的概念,並且在java中實現了一些東西。使用Java arraylist存儲來自文件掃描的數據

我的問題是我不確定我是否正確使用arraylist從文件掃描中獲取數據並將其輸入到數組列表中,以便以後進行排序和打印。我只是在java中遇到問題,任何幫助都會很棒,因爲我是java的新手。

import java.io.File; 
import java.io.FileInputStream; 
import java.io.InputStream; 
import java.io.FileNotFoundException; 
import java.util.Scanner; 
import java.util.regex.Pattern; 
import java.util.ArrayList; 
import java.util.*; 
public class MissionCount 
{ 
    private static ArrayList<String> list = new ArrayList<String>(); 
    // returns an InputStream that gets data from the named file 
    private static InputStream getFileInputStream(String fileName) throws Exception { 
     InputStream inputStream; 
     try { 
      inputStream = new FileInputStream(new File(fileName)); 
     } 
     catch (FileNotFoundException e) {  // no file with this name exists 
      inputStream = null; 
      throw new Exception("unable to open the file -- " + e.getMessage()); 
     } 
     return inputStream; 
    } 

    public static void main(String[] args) { 
     if (args.length != 1) { 
      System.out.println("USage: MissionCount <datafile>"); 
      //System.exit(1); 
     } 

     try { 
      System.out.printf("CS261 - MissionCount - Chad Dreher%n%n"); 
      int crewcount = 0; 
      int misscount = 0; 
      InputStream log = getFileInputStream(args[0]); 
      Scanner sc = new Scanner(log); 
      sc.useDelimiter(Pattern.compile(",|\n")); 

      while (sc.hasNext()) { 
       String crewMember = sc.next(); 
       list.add(crewMember); 
       String mission = sc.next(); 
       list.add(mission); 
      } 
      sc.close(); 
      // Add code to print the report here 
     }catch (Exception e) { 
      System.out.println("Error: " + e.getMessage()); 
     } 
    } 
} 

回答

0
InputStream log = getFileInputStream(args[0]); 

更改該行如下: -

File log = new File(args[0]) 

應該努力!

+0

非常感謝你的幫助。對此,我真的非常感激。 – HiddenSquid

+0

@HiddenSquid你的歡迎 –

+0

我有六分鐘,直到我可以檢查答案玩家約翰。 – HiddenSquid