수색…


통사론

  • file, err : = os.Open ( name ) // 읽기 전용 모드로 파일을 엽니 다. 파일을 열 수 없으면 non-nil 오류가 리턴됩니다.
  • file, err : = os.Create ( name ) // 이미 쓰기 전용 모드로 존재하는 파일을 생성하거나 엽니 다. 이미 존재하는 경우 파일을 덮어 씁니다. 파일을 열 수 없으면 non-nil 오류가 리턴됩니다.
  • file, err : = os.OpenFile ( name , flags , perm ) // 플래그로 지정된 모드로 파일을 엽니 다. 파일을 열 수 없으면 non-nil 오류가 리턴됩니다.
  • data, err : = ioutil.ReadFile ( name ) // 전체 파일을 읽고 반환합니다. 전체 파일을 읽을 수 없으면 비 nil 오류가 리턴됩니다.
  • err : = ioutil.WriteFile ( name , data , perm ) // 제공된 데이터와 UNIX 권한 비트를 사용하여 파일을 작성하거나 겹쳐 씁니다. 파일을 쓰지 못하면 non-nil 오류가 리턴됩니다.
  • err : = os.Remove ( name ) // 파일을 삭제합니다. 파일을 삭제할 수없는 경우 nil이 아닌 오류가 반환됩니다.
  • err : = os.RemoveAll ( name ) // 파일 또는 전체 디렉토리 계층을 삭제합니다. 파일 또는 디렉토리를 삭제할 수없는 경우 비 nil 오류가 리턴됩니다.
  • err : = os.Rename ( oldName , newName ) // 파일의 이름을 변경하거나 파일을 이동합니다 (여러 디렉토리에있을 수 있음). 파일을 이동할 수 없으면 비 nil 오류가 리턴됩니다.

매개 변수

매개 변수 세부
이름 string 유형의 파일 이름 또는 경로. 예 : "hello.txt" .
잘못하다 error . nil 이 아니면 함수가 호출 될 때 발생한 오류를 나타냅니다.
파일 os 패키지 파일 관련 함수에서 반환 한 *os.File 유형의 파일 핸들러입니다. io.ReadWriter 구현합니다. io.ReadWriter , Read(data)Write(data) 를 호출 할 수 있습니다. 이러한 함수는 파일의 열린 플래그에 따라 호출되지 않을 수 있습니다.
데이터 파일의 원시 데이터를 나타내는 바이트 조각 ( []byte ).
파마 UNIX 권한 비트는 os.FileMode 유형의 파일을 여는 데 사용됩니다. 권한 비트 사용에 도움이되는 몇 가지 상수를 사용할 수 있습니다.
깃발 int 유형의 파일 핸들러에서 호출 할 수있는 메서드를 결정하는 파일 열기 플래그입니다. 플래그의 사용에 도움이되는 몇 가지 상수를 사용할 수 있습니다. 그들은 다음과 같습니다 : os.O_RDONLY , os.O_WRONLY , os.O_RDWR , os.O_APPEND , os.O_CREATE , os.O_EXCL , os.O_SYNCos.O_TRUNC .

ioutil을 사용하여 파일 읽기 및 쓰기

"Hello, world!"라고 쓰는 간단한 프로그램. test.txt 하려면 데이터를 다시 읽고 그것을 밖으로 인쇄하십시오. 간단한 파일 I / O 작업을 보여줍니다.

package main

import (
    "fmt"
    "io/ioutil"
)

func main() {
    hello := []byte("Hello, world!")

    // Write `Hello, world!` to test.txt that can read/written by user and read by others 
    err := ioutil.WriteFile("test.txt", hello, 0644)
    if err != nil {
        panic(err)
    }

    // Read test.txt
    data, err := ioutil.ReadFile("test.txt")
    if err != nil {
        panic(err)
    }

    // Should output: `The file contains: Hello, world!`
    fmt.Println("The file contains: " + string(data))
}

현재 디렉토리의 모든 파일 및 폴더 나열

package main

import (
    "fmt"
    "io/ioutil"
)

func main() {
    files, err := ioutil.ReadDir(".")
    if err != nil {
        panic(err)
    }

    fmt.Println("Files and folders in the current directory:")

    for _, fileInfo := range files {
        fmt.Println(fileInfo.Name())
    }
}

현재 디렉토리의 모든 폴더 나열

package main

import (
    "fmt"
    "io/ioutil"
)

func main() {
    files, err := ioutil.ReadDir(".")
    if err != nil {
        panic(err)
    }

    fmt.Println("Folders in the current directory:")

    for _, fileInfo := range files {
        if fileInfo.IsDir() {
            fmt.Println(fileInfo.Name())
        }
    }
}


Modified text is an extract of the original Stack Overflow Documentation
아래 라이선스 CC BY-SA 3.0
와 제휴하지 않음 Stack Overflow