본문 바로가기
반응형

Golang30

Golang CSV를 JSON 변환 Json을 csv로 변환하는 방법은 다음의 링크를 참고하면 된다. https://zerostarting.tistory.com/40 2023. 3. 15.
Golang JSON을 CSV로 변환 Go에서 Json을 CSV로 변경하기 위해서는 encoding/csv와 encodeing/json 패캐지를 사용한다. package main import ( "encoding/csv" "encoding/json" "fmt" "log" "os" ) func main() { // 예제 데이터 jsonData := `[{"name":"Uhm", "age":19, "city":"Soeul"}, {"name":"Jun", "age":23, "city":"Tokyo"}, {"name":"Sik", "age":27, "city":"Los Angeles"}]` // json 데이터를 슬라이스 형태의 맵으로 변환. var data []map[string]interface{} err := json.Unmarshal([]b.. 2023. 3. 15.
Golang 디렉토리 생성(os.Mkdir, os.MkdirAll) Go에서 하나의 디렉토리를 생성할 때는 os.Mkdir() 함수를 사용한다. 만약 디렉토리의 계층(하위 디렉토리 생성)을 구분하여 생성하고 싶으면 os.MkdirAll() 함수를 사용한다. 두 함수는 디렉토리의 경로와 파일 시스템 권한을 인수로 넣어주어야 한다. 다음의 예제는 os.ModePerm 함수를 사용한다. os.ModePerm 함수는 파일 또는 디렉토리의 퍼미션 모드를 나타내는 상수이다. 이 함수는 파일 시스템에서 새로운 파일 또는 디렉토리를 만들 때 사용된다. os.ModePerm 함수는 32비트의 부호 없는 정수형 상수값으로, 0777이라는 8진수 값과 동일하다. 이 값은 파일 또는 디렉토리의 퍼미션 모드를 의미한다. 참고로 0777은 사용자, 그룹, 기타 사용자 모두가 읽기, 쓰기, 실행 .. 2023. 3. 15.
Golang sync.WaitGroup sync.WaitGroup는 고루틴이 실행되는 동안 다른 고루틴이 모두 종료될 때까지 기다리는 데 사용되는 동기화 기능이다. WaitGroup은 프로그램이 실행되는 동안 작업이 완료될 때마다 감소하는 카운터를 유지한다. sync.WaitGroup Method func (wg *WaitGroup) Add(delta int) : 대기 그룹에 고루틴 개수 추가 func (wg *WaitGroup) Done() : 고루틴이 끝났다는 것을 알려줄 떄 사용 func (wg *WaitGroup) Wait() : 모든 고루틴이 끝날 때까지 기다린다. 기본적으로 WaitGroup은 0으로 초기화되며, Add(n) 메서드를 사용하여 카운터 값을 증가시킨다. 이후에 Done() 메서드를 사용하여 작업이 완료될 때마다 카운터.. 2023. 3. 6.
반응형