>  기사  >  백엔드 개발  >  golang 파일을 닫아야 합니까?

golang 파일을 닫아야 합니까?

青灯夜游
青灯夜游원래의
2023-01-03 11:52:023811검색

golang 파일을 닫아야 합니다. Golang에서 파일을 조작할 때에는 파일을 먼저 열어야 하는데, 파일 열기 작업이 완료된 후에는 파일을 닫아야 합니다. 파일을 열기만 하고 파일을 닫지 않으면 낭비가 되기 때문입니다. 시스템 리소스의 Go 언어에서 Close 함수는 파일을 닫는 데 사용됩니다. 구문은 "func(file *File) Close() error"입니다. 매개변수 "file"은 열기에 실패하면 오류 메시지를 나타냅니다. 그렇지 않으면 nil이 반환됩니다.

golang 파일을 닫아야 합니까?

이 튜토리얼의 운영 환경: Windows 7 시스템, GO 버전 1.18, Dell G3 컴퓨터.

Golang에서 파일 열기 및 닫기

Golang에서 파일을 실행하려면 먼저 파일을 열어야 합니다. 파일 열기 작업이 완료된 후에는 파일만 열고 닫아야 합니다. 파일을 닫지 마십시오. 시스템 리소스가 낭비됩니다.

Golang에서 파일을 열려면 Open 함수를 사용하고, 파일을 닫을 때는 Close 함수를 사용합니다. 파일 열기, 파일 닫기 등 대부분의 파일 작업에는 매우 중요한 구조인 os.File 구조가 포함됩니다.

1.1 os.File 구조

type File struct {
	*file // os specific
}
type file struct {
	pfd        poll.FD
	name       string
	dirinfo    *dirInfo // nil unless directory being read
	appendMode bool     // whether file is opened for appending
}

설명:
여기서 os.File 구조에는 파일 포인터 구조가 포함되어 있음을 볼 수 있습니다.

  • pfd: 이는 FD 구조 유형이며 파일의 고유 식별자입니다. 열린 각 파일에는 파일을 고유하게 식별하기 위해 운영 체제에 파일 식별자가 있습니다. 이는 pfd입니다.
  • name: 파일 이름
  • dirinfo: 파일의 경로 정보 및 구조
  • appendMode: 파일을 콘텐츠에 추가할 수 있는지 여부를 나타내는 부울 유형입니다.

1.2 개방형 함수

구문:

func Open(name string) (*File, error)

매개변수 : namename : 파일 이름

  • 리 턴 값 :

file : 파일 핸들 열기

err : 오프닝이 실패하면 오류 메시지를 반환하고 그렇지 않으면 nil
  • explanation

를 반환합니다. Open 함수는 문자열 파일 이름을 매개변수로 받아들입니다. 열기에 성공하면 File 구조에 대한 포인터를 반환하고, 그렇지 않으면 오류 메시지를 반환합니다.

1.3 닫기 기능

구문:

func (file *File) Close() error

매개변수:

파일: 파일 열기

  • 반환 값

오류: 열기 실패 시 반환 오류 메시지가 없으면 nil이 반환됩니다.

  • 파일 포인터를 사용하여 닫기 기능을 호출하면 오류 메시지가 반환됩니다.

    1.4 설명 예시
  • 파일을 열려면 열기 기능을 사용하고 파일을 닫으려면 닫기 기능을 사용하세요:
package main

import (
	"fmt"
	"os"
)

func main() {
	fmt.Println("Open File Test")
	fileName := "D:/go项目/test.go"
	file, err := os.Open(fileName)
	if err != nil {
		fmt.Println("Open file err:", err)
		return
	}
	fmt.Println("Open File Sucess")
	if err := file.Close(); err != nil {
		fmt.Println("Close File Err:", err)
		return
	}
	fmt.Println("Close File Success")
}

[관련 권장 사항: Go 비디오 튜토리얼, 프로그래밍 교육]

위 내용은 golang 파일을 닫아야 합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.