The following code snippet show you how to create a tab delimited data file in Java. The tab character is represented using the \t
sequence of characters, a backslash (\
) character followed by the t
letter. In the code below we start by defining some data that we are going to write to the file.
We create a PrintWriter
object, passes a BufferedWritter
created using the Files.newBufferedWriter()
method. The countries.dat
is the file name where the data will be written. Because we are using the try-with-resources
the PrintWriter
and the related object will be closed automatically when the file operation finishes.
package org.kodejava.io;
import java.io.IOException;
import java.io.PrintWriter;
import java.nio.file.Files;
import java.nio.file.Paths;
import java.util.ArrayList;
import java.util.List;
public class TabDelimitedDataFile {
public static void main(String[] args) throws IOException {
List<String[]> data = new ArrayList<>();
data.add(new String[]{"Afghanistan", "AF", "AFG", "004", "Asia"});
data.add(new String[]{"Åland Islands", "AX", "ALA", "248", "Europe"});
data.add(new String[]{"Albania", "AL", "ALB", "008", "Europe"});
data.add(new String[]{"Algeria", "DZ", "DZA", "012", "Africa"});
data.add(new String[]{"American Samoa", "AS", "ASM", "016", "Polynesia"});
data.add(new String[]{"Andorra", "AD", "AND", "020", "South Europe"});
data.add(new String[]{"Angola", "AO", "AGO", "024", "Africa"});
data.add(new String[]{"Anguilla", "AI", "AIA", "660", "Americas"});
data.add(new String[]{"Antarctica", "AQ", "ATA", "010", ""});
data.add(new String[]{"Argentina", "AR", "ARG", "032", "Americas"});
try (PrintWriter writer = new PrintWriter(
Files.newBufferedWriter(Paths.get("countries.dat")))) {
for (String[] row : data) {
writer.printf("%1$20s\t%2$3s\t\t%3$3s\t\t%4$3s\t\t%5$s",
row[0], row[1], row[2], row[3], row[4]);
writer.println();
}
}
}
}
The output of the code snippet above are:
Afghanistan AF AFG 004 Asia
Åland Islands AX ALA 248 Europe
Albania AL ALB 008 Europe
Algeria DZ DZA 012 Africa
American Samoa AS ASM 016 Polynesia
Andorra AD AND 020 South Europe
Angola AO AGO 024 Africa
Anguilla AI AIA 660 Americas
Antarctica AQ ATA 010
Argentina AR ARG 032 Americas
Latest posts by Wayan (see all)
- How do I get number of each day for a certain month in Java? - September 8, 2024
- How do I get operating system process information using ProcessHandle? - July 22, 2024
- How do I sum a BigDecimal property of a list of objects using Java Stream API? - July 22, 2024