Read Text File and Create Body Array Java

How to read a File in Java

In this article, you lot'll larn how to read a text file or binary (epitome) file in Java using diverse classes and utility methods provided by Java like BufferedReader, LineNumberReader, Files.readAllLines, Files.lines, BufferedInputStream, Files.readAllBytes, etc.

Permit's expect at each of the different ways of reading a file in Java with the assist of examples.

Java read file using BufferedReader

BufferedReader is a simple and performant way of reading text files in Coffee. It reads text from a character-input stream. It buffers characters to provide efficient reading.

                          import              java.io.                            BufferedReader              ;              import              java.io.                            IOException              ;              import              java.nio.charset.                            Charset              ;              import              coffee.nio.charset.                            StandardCharsets              ;              import              java.nio.file.                            Files              ;              import              coffee.nio.file.                            Path              ;              import              java.nio.file.                            Paths              ;              public              class              BufferedReaderExample              {              public              static              void              principal              (              String              [              ]              args)              {              Path              filePath              =              Paths              .              get              (              "demo.txt"              )              ;              Charset              charset              =              StandardCharsets              .UTF_8;              try              (              BufferedReader              bufferedReader              =              Files              .              newBufferedReader              (filePath,              charset)              )              {              String              line;              while              (              (line              =              bufferedReader.              readLine              (              )              )              !=              naught              )              {              System              .out.              println              (line)              ;              }              }              catch              (              IOException              ex)              {              Arrangement              .out.              format              (              "I/O error: %southward%north"              ,              ex)              ;              }              }              }                      

Java read file line by line using Files.readAllLines()

Files.readAllLines() is a utility method of the Java NIO's Files class that reads all the lines of a file and returns a Listing<String> containing each line. Information technology internally uses BufferedReader to read the file.

                          import              java.io.                            IOException              ;              import              java.nio.charset.                            Charset              ;              import              java.nio.charset.                            StandardCharsets              ;              import              java.nio.file.                            Files              ;              import              java.nio.file.                            Path              ;              import              java.nio.file.                            Paths              ;              import              java.util.                            Listing              ;              public              course              FilesReadAllLinesExample              {              public              static              void              main              (              String              [              ]              args)              {              Path              filePath              =              Paths              .              get              (              "demo.txt"              )              ;              Charset              charset              =              StandardCharsets              .UTF_8;              effort              {              List                              <                String                >                            lines              =              Files              .              readAllLines              (filePath,              charset)              ;              for              (              Cord              line:              lines)              {              System              .out.              println              (line)              ;              }              }              catch              (              IOException              ex)              {              System              .out.              format              (              "I/O error: %south%n"              ,              ex)              ;              }              }              }                      

Coffee read file line by line using Files.lines()

Files.lines() method reads all the lines from a file equally a Stream. You can utilise Stream API methods like forEach, map to work with each line of the file.

                          import              coffee.io.                            IOException              ;              import              java.nio.charset.                            Charset              ;              import              java.nio.charset.                            StandardCharsets              ;              import              java.nio.file.                            Files              ;              import              java.nio.file.                            Path              ;              import              java.nio.file.                            Paths              ;              public              class              FilesLinesExample              {              public              static              void              main              (              String              [              ]              args)              {              Path              filePath              =              Paths              .              go              (              "demo.txt"              )              ;              Charset              charset              =              StandardCharsets              .UTF_8;              try              {              Files              .              lines              (filePath,              charset)              .              forEach              (              System              .out::              println              )              ;              }              grab              (              IOException              ex)              {              System              .out.              format              (              "I/O error: %southward%due north"              ,              ex)              ;              }              }              }                      

Java read file line by line using LineNumberReader

LineNumberReader is a buffered grapheme-stream reader that keeps rails of line numbers. You tin can use this course to read a text file line by line.

                          import              java.io.                            *              ;              import              coffee.nio.charset.                            Charset              ;              import              coffee.nio.charset.                            StandardCharsets              ;              import              coffee.nio.file.                            Files              ;              import              java.nio.file.                            Path              ;              import              java.nio.file.                            Paths              ;              public              class              LineNumberReaderExample              {              public              static              void              primary              (              String              [              ]              args)              {              Path              filePath              =              Paths              .              get              (              "demo.txt"              )              ;              Charset              charset              =              StandardCharsets              .UTF_8;              endeavor              (              BufferedReader              bufferedReader              =              Files              .              newBufferedReader              (filePath,              charset)              ;              LineNumberReader              lineNumberReader              =              new              LineNumberReader              (bufferedReader)              )              {              String              line;              while              (              (line              =              lineNumberReader.              readLine              (              )              )              !=              null              )              {              System              .out.              format              (              "Line %d: %southward%north"              ,              lineNumberReader.              getLineNumber              (              )              ,              line)              ;              }              }              catch              (              IOException              ex)              {              Arrangement              .out.              format              (              "I/O error: %s%n"              ,              ex)              ;              }              }              }                      

Java read binary file (image file) using BufferedInputStream

All the examples presented in this article so far read textual data from a character-input stream. If you're reading a binary data such as an image file then you need to employ a byte-input stream.

BufferedInputStream lets you read raw stream of bytes. It also buffers the input for improving operation.

                          import              java.io.                            *              ;              import              java.nio.file.                            Files              ;              import              java.nio.file.                            Paths              ;              public              class              BufferedInputStreamImageCopyExample              {              public              static              void              main              (              String              [              ]              args)              {              try              (              InputStream              inputStream              =              Files              .              newInputStream              (              Paths              .              get              (              "sample.jpg"              )              )              ;              BufferedInputStream              bufferedInputStream              =              new              BufferedInputStream              (inputStream)              ;              OutputStream              outputStream              =              Files              .              newOutputStream              (              Paths              .              get              (              "sample-copy.jpg"              )              )              ;              BufferedOutputStream              bufferedOutputStream              =              new              BufferedOutputStream              (outputStream)              )              {              byte              [              ]              buffer              =              new              byte              [              4096              ]              ;              int              numBytes;              while              (              (numBytes              =              bufferedInputStream.              read              (buffer)              )              !=              -              1              )              {              bufferedOutputStream.              write              (buffer,              0              ,              numBytes)              ;              }              }              catch              (              IOException              ex)              {              System              .out.              format              (              "I/O mistake: %s%n"              ,              ex)              ;              }              }              }                      

Java read file into []byte using Files.readAllBytes()

If you desire to read the entire contents of a file in a byte assortment so you lot can use the Files.readAllBytes() method.

                          import              com.lord's day.org.apache.xpath.internal.operations.                            String              ;              import              java.io.                            IOException              ;              import              coffee.nio.file.                            Files              ;              import              java.nio.file.                            Paths              ;              public              class              FilesReadAllBytesExample              {              public              static              void              primary              (              String              [              ]              args)              {              effort              {              byte              [              ]              information              =              Files              .              readAllBytes              (              Paths              .              become              (              "demo.txt"              )              )              ;              // Use byte data              }              catch              (              IOException              ex)              {              System              .out.              format              (              "I/O fault: %due south%n"              ,              ex)              ;              }              }              }                      

williamsthemphes.blogspot.com

Source: https://www.callicoder.com/java-read-file/

0 Response to "Read Text File and Create Body Array Java"

Post a Comment

Iklan Atas Artikel

Iklan Tengah Artikel 1

Iklan Tengah Artikel 2

Iklan Bawah Artikel