<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                企業??AI智能體構建引擎,智能編排和調試,一鍵部署,支持知識庫和私有化部署方案 廣告
                [TOC] 包io提供I/O原語的基本接口。它的主要工作是將這些原語的現有實現(如包操作系統中的實現)包裝到抽象功能的共享公共接口中,再加上一些其他相關的原語。 # 函數 ## ReadAll、ReadFull 讀取 reader 的數據 ```go // ReadAll fmt.Println("----------ReadAll-------------") reader := strings.NewReader("jiaxzeng") b, err := io.ReadAll(reader) if err != nil { panic(err) } fmt.Printf("value is %v\n", string(b)) // ReadFull // 當buf沒有讀取滿的時候,err:unexpected EOF。所以通過判斷 n 是否為 0 來決定是否打印內容 fmt.Println("\n----------ReadFull-------------") reader = strings.NewReader("jiaxzeng") buf := make([]byte, 3) for { n, err := io.ReadFull(reader, buf) if n > 0 { fmt.Printf("value is %v, err is %v\n", string(buf[:n]), err) } else if err == io.EOF { break } } // 運行結果 // ----------ReadAll------------- // value is jiaxzeng // ----------ReadFull------------- // value is jia, err is <nil> // value is xze, err is <nil> // value is ng, err is unexpected EOF ``` ## WriteString WriteString 將字符串 s 的內容寫入 w,w 接受一個字節切片。 ```go fmt.Println("\n----------WriteString-------------") if _, err = io.WriteString(os.Stdout, "jiaxzeng\n"); err != nil { panic(err) } // 運行結果 // ----------WriteString------------- // jiaxzeng ``` ## Copy 將副本從 src 復制到 dst,直到在 src 上到達 EOF 或發生錯誤 ```go fmt.Println("\n----------Copy-------------") reader = strings.NewReader("jiaxzeng\n") if _, err = io.Copy(os.Stdout, reader); err != nil { panic(err) } // 運行結果 // ----------Copy------------- // jiaxzeng ``` # Directories ## ReadAll ReadAll 從 r 讀取直到出現錯誤或 EOF 并返回它讀取的數據。 ```go fmt.Println("\n----------ReadAll-------------") reader = strings.NewReader("jiaxzeng") if b, err = ioutil.ReadAll(reader); err != nil { panic(err) } else { fmt.Printf("value is %v\n", string(b)) } // 運行結果 // ----------ReadAll------------- // value is jiaxzeng ``` ## ReadDir ReadDir 讀取 dirname 命名的目錄并返回 fs 的列表 ```go fmt.Println("\n----------ReadDir-------------") if fs, err := ioutil.ReadDir("."); err != nil { panic(err) } else { // for i := 0; i < len(fs); i++ { // fmt.Printf("fileName: %s, isDir: %t\n", fs[i].Name(), fs[i].IsDir()) // } for _, f := range fs { fmt.Printf("Name: %s, isDir: %t\n", f.Name(), f.IsDir()) } } // 運行結果 // ----------ReadDir------------- // Name: 1.basicDataType, isDir: true // Name: test.txt, isDir: false ``` ## ReadFile ReadFile 讀取以 filename 命名的文件并返回內容 ```go fmt.Println("\n----------ReadFile-------------") if b, err = ioutil.ReadFile("test.txt"); err != nil { panic(err) } else { fmt.Printf("file context: %v\n", string(b)) } // 運行結果 // ----------ReadFile------------- // file context: 123 // 456 ``` ## TempDir TempDir 在目錄 dir 中創建一個新的臨時目錄 ```go fmt.Println("\n----------TempDir-------------") if name, err := ioutil.TempDir("", "test-"); err != nil { panic(err) } else { fmt.Println(name) } // 運行結果 // ----------TempDir------------- // /tmp/test-3712695160 ``` ## TempFile TempFile 在目錄 dir 中創建一個新的臨時文件 ```go fmt.Println("\n----------TempFile-------------") if f, err := ioutil.TempFile("", "test_"); err != nil { panic(err) } else { fmt.Println(f.Name()) } // 運行結果 // ----------TempFile------------- // /tmp/test_2974692408 ``` ```go fmt.Println("\n----------WriteFile-------------") f, _ := ioutil.TempFile("", "test_") date := []byte("hello jiaxzeng") if err = ioutil.WriteFile(f.Name(), date, 0644); err != nil { panic(err) } if b, err := ioutil.ReadFile(f.Name()); err != nil { panic(err) } else { fmt.Printf("file context: %v\n", string(b)) } // 運行結果 // ----------WriteFile------------- // file context: hello jiaxzeng ``` 官方文檔:https://pkg.go.dev/io@go1.18.10
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看