package csvUtils;
import java.io.IOException;
import java.nio.charset.StandardCharsets;
import java.nio.file.Files;
import java.nio.file.Paths;
import java.util.ArrayList;
import java.util.List;
/**
-
Read input File, Edit, and Output to TSV File。
-
@author hal
*/
public class CsvTest {public static void main(String[] args) {
String inputFile = "D:\\pleiades\\workspace\\csvUtils\\src\\csvUtils\\input.txt"; String outputFile = "D:\\pleiades\\workspace\\csvUtils\\src\\csvUtils\\output.tsv"; try {//ファイル 処理が隠蔽され内部で完結するので、戸締りの心配もいらない。 List<String> lines = Files.readAllLines(Paths.get(inputFile)); List<String> outputList = new ArrayList<String>(); final String header = "サイトCD\t予約日\tCap会員ID"; outputList.add(header); lines.stream() .filter(t -> t.length() >= 95) .map(t -> t.replaceAll("\\s", "")) .forEach(t -> { System.out.println(t); String outputText = t.substring(30, 33) + "\t"; outputText = outputText + t.substring(63, 71) + "\t"; outputText = outputText + t.substring(84, 95); outputList.add(outputText); }); Files.write(Paths.get(outputFile), outputList, StandardCharsets.UTF_8); } catch (IOException e) { e.printStackTrace(); }
}
}