Maison > développement back-end > Golang > Partage d'exemples de code dans la communauté des fonctions Golang

Partage d'exemples de code dans la communauté des fonctions Golang

王林
Libérer: 2024-04-28 12:51:01
original
453 Les gens l'ont consulté

1. La communauté des fonctions Golang fournit des exemples de code, y compris des fonctions de base et des cas pratiques. 2. Fonction de base : comparer le temps d'acquisition de chaînes 3. Cas pratique : lire et traiter des fichiers CSV pour envoyer des emails

Partage dexemples de code dans la communauté des fonctions Golang

Partage d'échantillons de code dans la communauté des fonctions Golang

Introduction

La communauté des fonctions Golang est une écosystème actif d'exemples de code pour aider les développeurs à résoudre des problèmes courants et à créer des applications efficaces. Cet article partagera quelques exemples de codes utiles, y compris des exemples pratiques, pour montrer ces codes en action.

Fonction de base

  • Comparer les chaînes :

    package main
    
    import (
      "fmt"
      "strings"
    )
    
    func main() {
      s1 := "hello"
      s2 := "HELLO"
    
      if s1 == s2 {
          fmt.Println("Strings are equal")
      } else {
          fmt.Println("Strings are not equal")
      }
    
      if strings.EqualFold(s1, s2) {
          fmt.Println("Strings are equal (case-insensitive)")
      }
    }
    Copier après la connexion
  • Obtenir l'heure :

    package main
    
    import (
      "fmt"
      "time"
    )
    
    func main() {
      now := time.Now()
    
      fmt.Println("Current time:", now)
      fmt.Println("Current timestamp:", now.Unix())
    }
    Copier après la connexion

Cas pratique

Lecture et traitement du fichier CSV

L'exemple de code suivant démontre comment lire et traiter des fichiers CSV à l'aide du package encoding/csv : encoding/csv 包读取和处理 CSV 文件:

package main

import (
    "encoding/csv"
    "fmt"
    "os"
)

func main() {
    f, err := os.Open("data.csv")
    if err != nil {
        fmt.Println(err)
        return
    }
    defer f.Close()

    r := csv.NewReader(f)
    r.Comma = ';' // Set different comma if needed

    for {
        record, err := r.Read()
        if err == io.EOF {
            break
        }
        if err != nil {
            fmt.Println(err)
            continue
        }

        fmt.Println(record)
    }
}
Copier après la connexion

发送电子邮件

以下代码示例演示如何使用 net/smtp

package main

import (
    "fmt"
    "log"
    "net/smtp"
)

func main() {
    // Set up SMTP server and authentication
    host := "smtp.example.com"
    port := 587
    user := "username"
    password := "password"

    // Create message
    from := "from@example.com"
    to := []string{"to@example.com"}
    subject := "Test Email"
    body := "This is a test email."

    msg := "From: " + from + "\n" +
        "To: " + strings.Join(to, ",") + "\n" +
        "Subject: " + subject + "\n" +
        "\n" + body

    // Connect to SMTP server
    addr := fmt.Sprintf("%s:%d", host, port)
    auth := smtp.PlainAuth("", user, password, host)
    c, err := smtp.Dial(addr)
    if err != nil {
        log.Fatal(err)
    }

    // Send email
    if err := c.StartTLS(nil); err != nil {
        log.Fatal(err)
    }
    if err := c.Auth(auth); err != nil {
        log.Fatal(err)
    }
    if err := c.Mail(from); err != nil {
        log.Fatal(err)
    }

    for _, addr := range to {
        if err := c.Rcpt(addr); err != nil {
            log.Fatal(err)
        }
    }

    w, err := c.Data()
    if err != nil {
        log.Fatal(err)
    }
    if _, err := w.Write([]byte(msg)); err != nil {
        log.Fatal(err)
    }
    w.Close()

    // Quit the SMTP server
    c.Quit()
}
Copier après la connexion
🎜Envoyer un e-mail 🎜🎜🎜L'exemple de code suivant montre comment utiliser net/smtp package pour envoyer un email Email: 🎜rrreee

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal