Copyright 2009 The Go Authors. All rights reserved. Use of this source code is governed by a BSD-style license that can be found in the LICENSE file.
Package ioutil implements some I/O utility functions. As of Go 1.16, the same functionality is now provided by package io or package os, and those implementations should be preferred in new code. See the specific function documentation for details.
package ioutil

import (
	
	
	
	
)
ReadAll reads from r until an error or EOF and returns the data it read. A successful call returns err == nil, not err == EOF. Because ReadAll is defined to read from src until EOF, it does not treat an EOF from Read as an error to be reported. As of Go 1.16, this function simply calls io.ReadAll.
func ( io.Reader) ([]byte, error) {
	return io.ReadAll()
}
ReadFile reads the file named by filename and returns the contents. A successful call returns err == nil, not err == EOF. Because ReadFile reads the whole file, it does not treat an EOF from Read as an error to be reported. As of Go 1.16, this function simply calls os.ReadFile.
func ( string) ([]byte, error) {
	return os.ReadFile()
}
WriteFile writes data to a file named by filename. If the file does not exist, WriteFile creates it with permissions perm (before umask); otherwise WriteFile truncates it before writing, without changing permissions. As of Go 1.16, this function simply calls os.WriteFile.
func ( string,  []byte,  fs.FileMode) error {
	return os.WriteFile(, , )
}
ReadDir reads the directory named by dirname and returns a list of fs.FileInfo for the directory's contents, sorted by filename. If an error occurs reading the directory, ReadDir returns no directory entries along with the error. As of Go 1.16, os.ReadDir is a more efficient and correct choice: it returns a list of fs.DirEntry instead of fs.FileInfo, and it returns partial results in the case of an error midway through reading a directory.
func ( string) ([]fs.FileInfo, error) {
	,  := os.Open()
	if  != nil {
		return nil, 
	}
	,  := .Readdir(-1)
	.Close()
	if  != nil {
		return nil, 
	}
	sort.Slice(, func(,  int) bool { return [].Name() < [].Name() })
	return , nil
}
NopCloser returns a ReadCloser with a no-op Close method wrapping the provided Reader r. As of Go 1.16, this function simply calls io.NopCloser.
func ( io.Reader) io.ReadCloser {
	return io.NopCloser()
}
Discard is an io.Writer on which all Write calls succeed without doing anything. As of Go 1.16, this value is simply io.Discard.