[go] Go 언어를 사용한 파일 시스템 접근과 파일 처리

본 블로그 포스트에서는 Go 언어를 사용하여 파일 시스템에 접근하고 파일을 처리하는 방법에 대해 알아보겠습니다. Go 언어는 간결하고 효율적인 파일 처리 기능을 제공하여 파일을 읽고 쓰며 파일 및 디렉터리를 조작하는 다양한 기능을 제공합니다.

1. 파일 생성 및 쓰기

Go 언어에서 파일을 생성하고 쓰는 방법은 매우 간단합니다. 아래는 파일을 생성하고 데이터를 쓰는 예제 코드입니다.

package main

import (
	"fmt"
	"io/ioutil"
)

func main() {
	data := []byte("Hello, World!")
	err := ioutil.WriteFile("example.txt", data, 0644)
	if err != nil {
		panic(err)
	}
	fmt.Println("File written successfully")
}

위의 예제 코드에서는 ioutil.WriteFile 함수를 사용하여 “example.txt”라는 파일에 데이터를 씁니다.

2. 파일 읽기

이제 생성된 파일을 읽어보겠습니다.

package main

import (
	"fmt"
	"io/ioutil"
)

func main() {
	data, err := ioutil.ReadFile("example.txt")
	if err != nil {
		panic(err)
	}
	fmt.Println("File contents:", string(data))
}

위의 예제 코드에서는 ioutil.ReadFile 함수를 사용하여 “example.txt” 파일을 읽고 콘솔에 파일 내용을 출력합니다.

3. 파일 및 디렉터리 조작

Go 언어를 사용하면 파일을 생성하고 삭제하며 디렉터리를 생성하고 삭제하는 등의 작업을 쉽게 할 수 있습니다.

파일 삭제

package main

import (
	"fmt"
	"os"
)

func main() {
	err := os.Remove("example.txt")
	if err != nil {
		panic(err)
	}
	fmt.Println("File deleted successfully")
}

위의 코드에서는 os.Remove 함수를 사용하여 “example.txt” 파일을 삭제합니다.

디렉터리 생성

package main

import (
	"fmt"
	"os"
)

func main() {
	err := os.Mkdir("testdir", 0755)
	if err != nil {
		panic(err)
	}
	fmt.Println("Directory created successfully")
}

위의 코드에서는 os.Mkdir 함수를 사용하여 “testdir”이라는 이름의 디렉터리를 생성합니다.

위의 예제 코드를 통해 Go 언어를 사용하여 파일 시스템을 조작하고 파일을 처리하는 방법에 대해 알아보았습니다. Go 언어의 간결한 문법과 다양한 파일 처리 기능을 이용하여 효율적인 파일 시스템 처리를 구현할 수 있습니다.

더 많은 내용을 알고 싶다면 Go 공식 문서를 참고하시기 바랍니다.