TIL 2021.04.17 [구현]

Kyu·2021년 4월 17일
0

TIL

목록 보기
97/322

어제하던거에 이어서 본격적으로 파일로 만들어보기로 함.

먼저 지정된 날짜부터 지정된 날짜까지 순서대로 추출하는거기때문에
날짜데이터를 사용할수있는 LocalDateTime 를 가져옴.

of() 로 기준 날짜를 정해주고
plusDays() 로 원하는 일수만큼 더하는 메서드를 이용.
그리고 Formatter를 이용해서 날짜형식을 어떻게 가져올지 지정.

public class DateGenerator {
    public String setRange() {
        LocalDateTime datetime1 = LocalDateTime.of(2021, 1, 11, 0, 0);
        LocalDateTime datetime2 = datetime1.plusDays(1);
        DateTimeFormatter format = DateTimeFormatter.ofPattern("yyyyMMdd");
        String formatDateTime = datetime2.format(format);
        System.out.println("After Formatting: " + formatDateTime);
        return formatDateTime;
    }
}

결과

After formatting: 20210112

return 값을 url로 지정해준다.

public class Main {
    public static void main(String[] args) throws IOException {
        String date = new DateGenerator().setRange();
        String url = "https://velog.io/@kyukim/" + date;
        Document doc = Jsoup.connect(url).get();

        // ...생략

File, FileWriter을 이용해서 파일생성을 테스트한다.

        File file = new File("test.md");
        FileWriter fw = new FileWriter(file);

        fw.write(markdown);
        fw.flush();
        fw.close();

잘 생성되는 것을 확인.

잘 생성되면 for문으로 감싸서 자동으로 생성해준다.
나는 TIL이 96개 있으므로 96번 돌려줌.

public class Main {
    public static void main(String[] args) throws IOException {
        for (int i = 1; i < 96 + 1; i++) {
             String date = new DateGenerator().setRange(i);
             String url = "https://velog.io/@kyukim/" + date;
             Document doc = Jsoup.connect(url).get();

        // ...생략

그리고 파일명도 DateGenerator에서 생성해줬떤 date로 변경해주는 것을 잊지 않는다.

            String pathName = date + ".md";
            File file = new File(pathName);
            FileWriter fw = new FileWriter(file);

아래와 같이 쭊쭊 만들어지는 것을 확인

레포 https://github.com/kyu-kim-kr/markdown-extractor

profile
TIL 남기는 공간입니다

0개의 댓글