Belajar Sorting a String and Write to File with Golang

April 11, 2022

Belajar sorting sebuah string dari argument terminal dan tulis ke sebuah file.

Expected Output

Command:

go run main.go orange banana apple

Result:

cat sorted.txt
     apple banana orange

Implementation

package main

import (
    "fmt"
    "io/ioutil"
    "os"
    "sort"
)

func main() {
    // get all arguments
    items := os.Args[1:]
    if len(items) == 0 {
        fmt.Println("Send me some items and I will sort them")
        return
    }

    // String slices are sortable using `sort.Strings`
    sort.Strings(items)

    var data []byte
    for _, s := range items {
        // append a string to a byte slice
        data = append(data, s...)
    }

    err := ioutil.WriteFile("sorted.txt", data, 0644)
    if err != nil {
        fmt.Println(err)
        return
    }
}

Output Example

Program Output

Key Concepts

  • Using os.Args untuk mengambil command line arguments
  • sort.Strings() untuk mengurutkan string slice
  • ioutil.WriteFile untuk menulis ke file
  • Permission 0644 untuk file yang dibuat

Source

Code adapted from: Learn Go Project

#Golang #Sorting #File #Programming #Tutorial