Как вы можете выбрать одну строку из текстового файла и преобразовать ее в объект массива? - PullRequest
2 голосов
/ 01 февраля 2012

Хорошо, это код, и мне нужно каким-то образом взять строку из текстового файла и преобразовать ее в объект массива. как p [0] = "asdasdasd"

public class Patient2 {
    public static void main(String args[])
    {

        int field = 0;
        String repeat = "n";
        String repeat1 = "y";
        Scanner keyIn = new Scanner(System.in);



        // FILE I/O
        try{
              // Open the file that is the first 
              // command line parameter
              FileInputStream fstream = new FileInputStream("Patient.txt");
              BufferedReader br = new BufferedReader(new InputStreamReader(fstream));
              String strLine;
              //Read File Line By Line
              while ((strLine = br.readLine()) != null)   {
              // Print the content on the console
              System.out.println (strLine);
              }
              //Close the input stream
              in.close();
                }catch (Exception e){//Catch exception if any
              System.err.println("Error: " + e.getMessage());
              }
        ArrayList<Patient1> patients=new ArrayList<Patient1>();
        Patient1 p =new Patient1();
        //set value to the patient object
        patients.add(p);
        System.out.println(p);
    }
}

Ответы [ 2 ]

2 голосов
/ 01 февраля 2012

Просто используйте ArrayList<String> с add(strline);
и используйте toArray(new String []), чтобы получить массив после закрытия входного потока.

 ArrayList<String> list = new ArrayList<String>();
 ...

 while ((strLine = br.readLine()) != null) {
    list.add(strLine);
 }
 ... 

 String [] s = list.toArray(new String []);
2 голосов
/ 01 февраля 2012

Вместо того, чтобы печатать его на консоли, вы можете добавить его в List<String>

List<String> lines = new ArrayList<String>();
while ((strLine = br.readLine()) != null)   {
   // Print the content on the console
   System.out.println (strLine);
    lines.add(strLine)
}

Примечание: ваш код может быть намного чище, вы можете обрабатывать закрытие ресурсов в конечном итоге

...