Golang FMT Errorf

Golang FMT Errorf
Pakiet FMT jest jednym z najbardziej przydatnych pakietów w standardowej bibliotece Go. Pozwala nam pracować z operacjami we/wy, w tym drukowanie informacji na konsolę.

Pakiet FMT zapewnia również funkcję błędu w celu generowania niestandardowych i opisowych komunikatów o błędach. Funkcja obsługuje niestandardowe specyfikatory formatowania i tworzy informacyjne komunikaty o błędach dla użytkowników i programistów.

Dowiedzmy się, jak możemy tworzyć niestandardowe komunikaty o błędach za pomocą FMT.Funkcja błędu.

Składnia funkcji

Definicja funkcji jest taka, jak pokazano:

FUNC ERMERF (String Format, A… interfejs )

Funkcja akceptuje dwa parametry:

  1. Format jako ciąg zawierający niestandardowe specyfikatory używane przez funkcję do formatowania rzeczywistego komunikatu o błędzie.
  2. Interfejs zawiera listę argumentów do zastąpienia niestandardowych wartości specyfikacji w ciągu wiadomości komunikatu o błędzie. Możesz przekazać dowolną liczbę argumentów dowolnego czasu pod warunkiem ustawiania specyfikatora.

Specyfikatory formatu

Poniżej znajdują się niektóre wspólne specyfikatory do użycia z funkcją błędu:

  1. %S - Wydrukuj ciąg.
  2. %D - Wydrukuj liczbę całkowitą
  3. %F - liczba punktów pływających.
  4. %V - Wartości drukowania struktury.
  5. %+V - Drukuj pola i wartości.
  6. %t - drukować boolean.
  7. %B - Drukuj wartość binarna.
  8. %e - notacja naukowa

Te wspólne specyfikatory są używane z funkcją błędu. Sprawdź następującą dokumentację podaną, aby dowiedzieć się więcej.

https: // pkg.Iść.dev/fmt

Funkcja powinna zwrócić komunikat o błędzie wygenerowany zgodnie z specyfikatorem formatu i przekazane argumenty.

Przykład 1

Poniższy kod pokazuje, jak korzystać z funkcji błędu, aby wygenerować niestandardowy komunikat o błędzie:

Pakiet Main
importować „fmt”
funcMain ()
Const Użytarz, uid = „debian”, 1000
err: = fmt.Errorf ("[błąd!]… Nazwa użytkownika %s UID: %D nie znaleziono.", nazwa użytkownika, UID)
fmt.Println (err)

W poprzednim kodzie tworzymy dwie stałe zmienne zawierające ciąg i int. Następnie używamy metody błędu, aby wygenerować niestandardowy komunikat o błędzie z formatami %S i %D odpowiednio dla ciągu i liczby całkowitej.

Kod powyżej powinien zwrócić komunikat o błędzie jako:

[Błąd!]… Nazwa użytkownika debian z UID: 1000 nie znaleziono.

Przykład 2

Możemy również sformatować strukturę przy użyciu specyfikatorów %v lub %+v. Przykład znajduje się poniżej:

Pakiet Main
importować „fmt”
Wpisz Struktura użytkownika
First_name, Last_Namestring

funcMain ()
user1: = User „Jane”, „Doe”
err: = fmt.Errorf („struct info %+v”, user1)
fmt

Poprzedni kod powinien wydrukować pole struktury i wartości, jak pokazano poniżej:

Structinfo First_name: Janelast_name: Doe

Przykład 3

Możemy również dołączyć znacznik czasu dla komunikatu o błędzie za pomocą wbudowanych metod czasowych. Przykład znajduje się poniżej:

Pakiet Main
import (
„FMT”
"czas"
)
FuncMain ()
err: = fmt.Errorf („Wystąpił błąd w: %v”, czas.Teraz().Format („2006-01-02T15: 04: 05Z07: 00"))))
fmt.Println (err)

Poprzedni kod powinien zawierać bieżący czas sformatowany zgodnie z opcjami formatowania RFC3339.

Powstałe wyjście jest jak pokazano:

Wystąpił błąd: 2022-01-28T15: 55: 01+03: 00

Wniosek

Ten przewodnik obejmował podstawy generowania niestandardowych komunikatów o błędach za pomocą FMT.Funkcja błędu, a także kilka przykładów do przeglądu. Mamy nadzieję, że ten artykuł jest pomocny. Sprawdź inne artykuły w Linux, aby uzyskać więcej wskazówek i samouczków.