Flutter 캠프 14일차

은성·2025년 12월 11일

Flutter 본캠프

목록 보기
15/57
post-thumbnail

오늘의 내용

모닝스터디 , 과제

import 'dart:io';

void main() async {
  // 파일 불러와서 "00님의 성적은 00점 입니다." 형태로 출력
  // 1. 파일 불러오기
  // 절대경로 vs 상대경로
  // 절대경로 : 컴퓨터 안에 최상위 경로부터 전부 적어야함, git에 올릴경우 상대가 못 씀
  // 상대경로 : 현재 위치부터의 경로/ 현재경로 터미널에서의 위치, git에 올려도 상대가 쓸 수 있음
  File txtFile = File('students.txt'); // ..<상위 폴더 개념
  // 파일만 불러옴
  String content = await txtFile.readAsStringSync();
  // 파일 안에 내용도 불러옴
  // 2. 첫번째줄 불러오기
  // split 함수
  // - String 클래스가 가지고 있는 메서드
  // - 인자로 넘겨준 문자열을 기준으로 분리해서 List에 담아줌
  List<String> lines = content.split('\n'); // \n : 한줄 띄기
  List<Student> studentList = [];
  //
  for (String nameAndScore in lines) {
    // String gildong = lines[0];
    // 3. 이름과 점수 구분짓기
    // nameAndScoreList : ["홍길동","90"]
    List<String> nameAndScoreList = nameAndScore.split(',');

    // print(nameAndScoreList[0]);
    // print(nameAndScoreList[1]);

    String name = nameAndScoreList[0];
    // int.parse => 숫자가 들어가있는 문자열을 숫자형태(int)로 바꿔줌
    // ---
    // int.parse("ABC");
    // tryParse = "ABC"라는 문자열을 파싱해서 에러났을 때 null이 반환되는데,
    // ?? 0 = null일땐 0일 abc라는 변수에 넣어라
    // int abc = int.tryParse("ABC") ?? 0 ;
    // ---
    int score = int.tryParse(nameAndScoreList[1]) ?? 0;
    print(name);
    print(score);
    // 이름과 점수를 담아 객체만들기
    Student s = Student(name, score);
    studentList.add(s);
  }
}

class Student {
  String name;
  int score;
  Student(this.name, this.score);
}

과제

1-4 구현완료,
나만의 기능 추가 완료
https://github.com/eunseong0207/eunseong0207-dart_assignment2

깃 허브에 주석으로 설명 하는게 조금 익숙해 졌고,
커밋 컨벤션을 활용 하는 것도 익숙해 졌다.
매일 나 자신이 부족하다고 느끼면서도 조금씩은 나아지는 것 같아 재미가 조금은 생긴것 같은 느낌이다.

0개의 댓글