Golang program to create a zip file containing a text file

Here, we are going to learn how to create a zip file containing a text file in Golang (Go Language)?
Submitted by Nidhi, on April 09, 2021

Problem Solution:

In this program, we will create a zip file and then write a text file inside the created zip on the disk.

Program/Source Code:

The source code to create a zip file containing a text file is given below. The given program is compiled and executed on the ubuntu 18.04 operating system successfully.

// Golang program to create a zip file
// containing a text file

package main

import "os"
import "fmt"
import "archive/zip"

func main() {
	filePtr, err := os.Create("ABC.zip")
	if err != nil {
		fmt.Println(err)
	}

	// Create a zip writter object using file pointer
	MyZipWriter := zip.NewWriter(filePtr)

	writer, err := MyZipWriter.Create("ABC.txt")
	if err != nil {
		fmt.Println(err)
	}
	_, err = writer.Write([]byte("Sample text"))
	if err != nil {
		fmt.Println(err)
	}

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

	filePtr.Close()
	fmt.Println("ABC.zip file is created successfully")
}

Output:

ABC.zip file is created successfully

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.

Here, we also imported the "archive/zip" package to use zip writer to create a zip file on the disk.

In the main() function, we created the "ABC.zip" file and then write an "ABC.txt" text file inside the created zip on the disk.

Golang File Handling Programs »



ADVERTISEMENT
ADVERTISEMENT




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.