Golang program to open a file in append mode

Here, we are going to learn how to open a file in append mode in Golang (Go Language)?
Submitted by Nidhi, on April 06, 2021

Problem Solution:

In this program, we will open a file in append mode using os.OpenFile() function, after that we write data into the file and read updated data from the file, and print on the console screen.

Program/Source Code:

The source code to open a file in append mode is given below. The given program is compiled and executed successfully.

// Golang program to open a file in append mode

package main

import "os"
import "io/ioutil"
import "fmt"

func main() {
	data1, err := ioutil.ReadFile("Sample.txt")
	if err != nil {
		fmt.Println("Unable to read data: %s", err)
	}
	fmt.Printf("\nData before appending text: \n%s", data1)

	Myfile, err := os.OpenFile("Sample.txt", os.O_APPEND, 0666)
	if err != nil {
		fmt.Println("Unable to open file")
	}

	len, err := Myfile.WriteString(" Hello India")

	if len == 0 {
		fmt.Printf("File is opened in readonly mode")
	} else {
		fmt.Printf("\n%d characters written into file", len)
	}
	Myfile.Close()

	data2, err := ioutil.ReadFile("Sample.txt")
	if err != nil {
		fmt.Println("Unable to read data: %s", err)
	}
	fmt.Printf("\nData after appending text: \n%s", data2)
}

Output:

Data before appending text:
Hello World
12 characters written into file
Data after appending text:
Hello World Hello India

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 fmt, os packages then we can use a function related to the fmt and os package.

In the main() function, we opened the "Sample.txt" file in append mode using os.OpenFile() function and write some text into file. Here we printed file data before and after appending data into the file on the console screen.

Golang File Handling Programs »






Comments and Discussions




Languages: » C » C++ » C++ STL » Java » Data Structure » C#.Net » Android » Kotlin » SQL
Web Technologies: » PHP » Python » JavaScript » CSS » Ajax » Node.js » Web programming/HTML
Solved programs: » C » C++ » DS » Java » C#
Aptitude que. & ans.: » C » C++ » Java » DBMS
Interview que. & ans.: » C » Embedded C » Java » SEO » HR
CS Subjects: » CS Basics » O.S. » Networks » DBMS » Embedded Systems » Cloud Computing
» Machine learning » CS Organizations » Linux » DOS
More: » Articles » Puzzles » News/Updates

© https://www.includehelp.com some rights reserved.