Go 언어에서는 파일을 읽고 수정하는 것이 매우 일반적입니다. 이 글에서는 파일 열기, 파일 내용 삭제, 파일 정보 획득, 파일을 원래 상태로 복원하는 등 파일을 조작하는 방법을 소개합니다.
1. 파일 열기
os.OpenFile() 함수를 사용하여 많은 매개변수를 허용하는 파일을 엽니다. 이 경우 파일 이름과 플래그만 전달합니다.
파일 플래그는 필요에 따라 변경됩니다. 예를 들어 파일 끝에 내용을 추가하려면 플래그를 os.O_APPEND | os.O_WRONLY로 설정해야 합니다.
샘플 코드:
f, err := os.OpenFile("example.txt", os.O_RDWR, 0644) if err != nil { log.Fatal(err) } defer f.Close()
2. 파일 내용 삭제
파일 내용을 삭제하려면 os.Truncate() 함수를 사용하세요. 이 함수는 오프셋 매개변수와 길이 매개변수를 허용합니다. 오프셋은 잘라낼 파일의 시작 위치를 나타내고, 길이는 잘라낼 바이트 수를 나타냅니다.
샘플 코드:
err := os.Truncate("example.txt", 0) if err != nil { log.Fatal(err) }
3. 파일 정보 얻기
파일의 메타데이터를 얻으려면 os.Stat() 함수를 사용하세요. 획득된 메타데이터에는 파일 크기, 수정 시간, 파일 모드 등이 포함됩니다.
샘플 코드:
fi, err := os.Stat("example.txt") if err != nil { log.Fatal(err) } fmt.Println(fi.Size()) fmt.Println(fi.Mode()) fmt.Println(fi.ModTime())
4. 파일을 원래 상태로 복원
파일을 원래 상태로 복원하려면 새 콘텐츠를 작성하기 전에 이전 콘텐츠를 로드한 후 다음을 작성해야 합니다. 이전 콘텐츠를 파일로 되돌립니다.
샘플 코드:
// 读取原始内容 b, err := ioutil.ReadFile("example.txt") if err != nil { log.Fatal(err) } // 写入新内容 _, err = fmt.Fprint(f, "new content") if err != nil { log.Fatal(err) } // 将原始内容写回去 _, err = f.Seek(0, 0) if err != nil { log.Fatal(err) } _, err = f.Write(b) if err != nil { log.Fatal(err) }
위 내용은 간단한 파일 수정 작업입니다. 이 글이 도움이 되었으면 좋겠습니다!
위 내용은 golang에서 파일을 조작하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!