Импортируйте текстовый файл и читайте построчно в Java - PullRequest
3 голосов
/ 08 августа 2010

Мне было интересно, как можно было бы импортировать текстовый файл. Я хочу импортировать файл и затем читать его построчно.

спасибо!

Ответы [ 4 ]

12 голосов
/ 08 августа 2010

Я понятия не имею, что вы подразумеваете под «импортом» файла, но вот самый простой способ построчно открывать и читать текстовый файл, используя только стандартные классы Java. (Это должно работать для всех версий Java SE до JDK1.1. Использование Scanner - еще одна опция для JDK1.5 и более поздних версий.)

BufferedReader br = new BufferedReader(
        new InputStreamReader(new FileInputStream(fileName)));
try {
    String line;
    while ((line = br.readLine()) != null) {
        // process line
    }
} finally {
    br.close();
}
9 голосов
/ 08 августа 2010

Это должно охватывать практически все, что вам нужно.

http://download.oracle.com/javase/tutorial/essential/io/index.html

И для конкретного примера: http://www.java -tips.org / java-se-tips /java.io/how-to-read-file-in-java.html

Это также может помочь: Чтение текстового файла на Java

4 голосов
/ 08 августа 2010

Я не понял, что вы имели в виду под «импортом». Я предполагаю, что вы хотите прочитать содержимое файла. Вот пример метода, который делает это

  /** Read the contents of the given file. */
  void read() throws IOException {
    System.out.println("Reading from file.");
    StringBuilder text = new StringBuilder();
    String NL = System.getProperty("line.separator");
    Scanner scanner = new Scanner(new File(fFileName), fEncoding);
    try {
      while (scanner.hasNextLine()){
        text.append(scanner.nextLine() + NL);
      }
    }
    finally{
      scanner.close();
    }
    System.out.println("Text read in: " + text);
  }

Подробнее см. Здесь

0 голосов
/ 08 августа 2010

Apache Commons IO предлагает замечательную утилиту под названием LineIterator, которая может использоваться явно для этой цели.Класс FileUtils имеет метод для его создания для файла: FileUtils.lineIterator (File).

Вот пример его использования:

File file = new File("thing.txt");
LineIterator lineIterator = null;

try
{
    lineIterator = FileUtils.lineIterator(file);
    while(lineIterator.hasNext())
    {
        String line = lineIterator.next();
        // Process line
    }
}
catch (IOException e)
{
    // Handle exception
}
finally
{
    LineIterator.closeQuietly(lineIterator);
}
...