Q:

Golang program to change the buffer writer size

belongs to collection: Golang Buffered Input-Output Programs

0

In this program, we will change the buffer writer size and print size of the buffer-writer on the console screen.

All Answers

need an explanation for this answer? contact us directly to get an explanation for this answer

Program/Source Code:

The source code to change the buffer writer size is given below. The given program is compiled and executed on the ubuntu 18.04 operating system successfully.

// Golang program to change the buffer
// writer size

package main

import "fmt"
import "os"
import "bufio"

func main() {
	filePtr, err := os.OpenFile("Demo.txt", os.O_WRONLY, 0666)

	if err != nil {
		fmt.Println(err)
	}

	//Create a buffer writter using file pointer.
	bufferedWriter := bufio.NewWriter(filePtr)

	BufferSize := bufferedWriter.Available()
	if err != nil {
		fmt.Println(err)
	}
	fmt.Printf("Default buffer size: %d\n", BufferSize)

	bufferedWriter = bufio.NewWriterSize(bufferedWriter, 6800)

	BufferSize = bufferedWriter.Available()
	if err != nil {
		fmt.Println(err)
	}
	fmt.Printf("New buffer size: %d\n", BufferSize)

	filePtr.Close()
}

Output:

Default buffer size: 4096
New buffer size: 6800

Explanation:

In the above program, we declare the package main. The main package is used to tell the Go language compiler that the package must be compiled and produced the executable file. Here, we imported the fmtos packages then we can use a function related to the fmt and os package.

Here, we also imported the bufio package to use buffer writer to write data into a file.

In the main() function, we opened the "Demo.txt" file and then get the default buffer writer size and then change the buffer writer size using NewWriterSize() function. After that, we printed the new size on the console screen.

need an explanation for this answer? contact us directly to get an explanation for this answer

total answers (1)

Golang program to create a simple buffer reader... >>
<< Golang program to get the default buffer writer si...