Replace deprecated ioutil functions with others (#374)

* Remove use of deprecated ioutil functions from examples

* Remove usage of ioutil from gobyexample's own scripts

+ regenerate output
This commit is contained in:
Eli Bendersky
2021-08-28 06:38:35 -07:00
committed by GitHub
parent 952453859f
commit ac94809b64
17 changed files with 65 additions and 73 deletions

View File

@@ -5,7 +5,6 @@ package main
import (
"fmt"
"io/ioutil"
"os"
"path/filepath"
)
@@ -32,7 +31,7 @@ func main() {
// Helper function to create a new empty file.
createEmptyFile := func(name string) {
d := []byte("")
check(ioutil.WriteFile(name, d, 0644))
check(os.WriteFile(name, d, 0644))
}
createEmptyFile("subdir/file1")
@@ -48,8 +47,8 @@ func main() {
createEmptyFile("subdir/parent/child/file4")
// `ReadDir` lists directory contents, returning a
// slice of `os.FileInfo` objects.
c, err := ioutil.ReadDir("subdir/parent")
// slice of `os.DirEntry` objects.
c, err := os.ReadDir("subdir/parent")
check(err)
fmt.Println("Listing subdir/parent")
@@ -64,7 +63,7 @@ func main() {
// Now we'll see the contents of `subdir/parent/child`
// when listing the *current* directory.
c, err = ioutil.ReadDir(".")
c, err = os.ReadDir(".")
check(err)
fmt.Println("Listing subdir/parent/child")

View File

@@ -1,2 +1,2 @@
fa3655fa8f4fa28e971cbe853dffb02773afce83
UaeLMS5VQVR
d2eaefdc6dbeaf130e4824403baa948b5845c0ec
cICbVSX51zI

View File

@@ -8,7 +8,6 @@ import (
"bufio"
"fmt"
"io"
"io/ioutil"
"os"
)
@@ -24,7 +23,7 @@ func main() {
// Perhaps the most basic file reading task is
// slurping a file's entire contents into memory.
dat, err := ioutil.ReadFile("/tmp/dat")
dat, err := os.ReadFile("/tmp/dat")
check(err)
fmt.Print(string(dat))

View File

@@ -1,2 +1,2 @@
3420958bafd67fd997481d1ada288566666343c7
kF0cDC0drsX
5351edae47bb2f2c9b5d4b9682b8176beb0c24e5
DF2Wo8nDKaF

View File

@@ -9,7 +9,7 @@ package main
import (
"fmt"
"io/ioutil"
"io"
"os/exec"
)
@@ -46,7 +46,7 @@ func main() {
grepCmd.Start()
grepIn.Write([]byte("hello grep\ngoodbye grep"))
grepIn.Close()
grepBytes, _ := ioutil.ReadAll(grepOut)
grepBytes, _ := io.ReadAll(grepOut)
grepCmd.Wait()
// We omitted error checks in the above example, but

View File

@@ -1,2 +1,2 @@
6a62e3109c483c2b52a99905dc1ba5c8cb2a281b
m2CpSlHPEVq
b6e1e4b70a494be9f344a9f31aff520116d0ac24
YJs_YtJY0sS

View File

@@ -8,7 +8,6 @@ package main
import (
"fmt"
"io/ioutil"
"os"
"path/filepath"
)
@@ -22,17 +21,17 @@ func check(e error) {
func main() {
// The easiest way to create a temporary file is by
// calling `ioutil.TempFile`. It creates a file *and*
// calling `os.CreateTemp`. It creates a file *and*
// opens it for reading and writing. We provide `""`
// as the first argument, so `ioutil.TempFile` will
// as the first argument, so `os.CreateTemp` will
// create the file in the default location for our OS.
f, err := ioutil.TempFile("", "sample")
f, err := os.CreateTemp("", "sample")
check(err)
// Display the name of the temporary file. On
// Unix-based OSes the directory will likely be `/tmp`.
// The file name starts with the prefix given as the
// second argument to `ioutil.TempFile` and the rest
// second argument to `os.CreateTemp` and the rest
// is chosen automatically to ensure that concurrent
// calls will always create different file names.
fmt.Println("Temp file name:", f.Name())
@@ -49,10 +48,10 @@ func main() {
// If we intend to write many temporary files, we may
// prefer to create a temporary *directory*.
// `ioutil.TempDir`'s arguments are the same as
// `TempFile`'s, but it returns a directory *name*
// `os.MkdirTemp`'s arguments are the same as
// `CreateTemp`'s, but it returns a directory *name*
// rather than an open file.
dname, err := ioutil.TempDir("", "sampledir")
dname, err := os.MkdirTemp("", "sampledir")
check(err)
fmt.Println("Temp dir name:", dname)
@@ -61,6 +60,6 @@ func main() {
// Now we can synthesize temporary file names by
// prefixing them with our temporary directory.
fname := filepath.Join(dname, "file1")
err = ioutil.WriteFile(fname, []byte{1, 2}, 0666)
err = os.WriteFile(fname, []byte{1, 2}, 0666)
check(err)
}

View File

@@ -1,2 +1,2 @@
cc4755e23cb4ba3c0e0ef5554ec9e9477372422a
nMpjCsALS6P
d875fd8f061e895d72c48c360a8ad4b04e406dd4
hVcPg9RH3_V

View File

@@ -6,7 +6,6 @@ package main
import (
"bufio"
"fmt"
"io/ioutil"
"os"
)
@@ -21,7 +20,7 @@ func main() {
// To start, here's how to dump a string (or just
// bytes) into a file.
d1 := []byte("hello\ngo\n")
err := ioutil.WriteFile("/tmp/dat1", d1, 0644)
err := os.WriteFile("/tmp/dat1", d1, 0644)
check(err)
// For more granular writes, open a file for writing.

View File

@@ -1,2 +1,2 @@
314a0074840e22b328b6412130c17b9bea53c9c9
fQ7sd4gXv0F
e312100df0c063ecd65e7599653636188277b6a6
Y12O-L_zFS1