Чтение данных из URL-адреса и помещение их в ArrayList

#java #url #arraylist

#java #url #arraylist

Вопрос:

Привет. Я пытаюсь прочитать текстовый файл с URL-адреса Dropbox и поместить содержимое текстового файла в ArrayList. Я смог прочитать и распечатать данные с помощью метода openStream (), но, похоже, я не могу понять, как поместить эти данные в ArrayList

 URL pList = new URL("http://url");
  BufferedReader in = new BufferedReader(
        new InputStreamReader(
        pList.openStream()));

  String inputLine;

  while ((inputLine = in.readLine()) != null)
      System.out.println(inputLine);
  

был бы признателен за помощь?

Ответ №1:

 List<String> list = new ArrayList<String>();
while ((inputLine = in.readLine()) != null) {
    list.add(inputLine);
}
  

Ответ №2:

Попробуйте что-то вроде этого:

 String inputLine;
ArrayList<String> array = new ArrayList<String>();

while ((inputLine = in.readLine()) != null) {
    array.add(inputLine);
}
  

Ответ №3:

Это зависит от того, что вы хотите сделать:

  • Храните несколько файлов DropBox в списке массивов, где 1 элемент представляет 1 файл

    Используйте a StringBuilder , чтобы объединить все строки в одну строку.

     List<String> files = new ArrayList<String>();
    files.add(readFileUsingStringBuilder(pList));
    
    public static String readFileUsingStringBuilder(URL url)
    {
         StringBuilder sb = new StringBuilder();
         String separator = "";
         BufferedReader br = new BufferedReader(new InputStreamReader(url.openStream()));
         String line;
         while ((line = br.readLine() != null)
         {
             sb.append(separator);
             sb.append(line);
             separator = "n";
         }
         return sb.toString();
    }
      
  • Сохраняйте каждую строку файла в записи ArrayList

     String inputLine;
    ArrayList<String> array = new ArrayList<String>();
    
    while ((inputLine = in.readLine()) != null) {
        array.add(inputLine);
    }