Articles of aller

Comment décoder JSON avec le type convert de ssortingng en float64 dans Golang?

Je dois décoder une chaîne JSON avec le nombre flottant comme: {“name”:”Galaxy Nexus”, “price”:”3460.00″} J’utilise le code Golang ci-dessous: package main import ( “encoding/json” “fmt” ) type Product struct { Name ssortingng Price float64 } func main() { s := `{“name”:”Galaxy Nexus”, “price”:”3460.00″}` var pro Product err := json.Unmarshal([]byte(s), &pro) if err == nil { […]

Obtenir le message d’erreur «bytes.Buffer n’implémente pas io.Writer»

J’essaie d’avoir un object Go implémenter io.Writer, mais écrit dans une chaîne au lieu d’un fichier ou d’un object de type fichier. Je pensais que bytes.Buffer fonctionnerait car il implémente Write(p []byte) . Cependant quand j’essaye ceci: import “bufio” import “bytes” func main() { var b bytes.Buffer foo := bufio.NewWriter(b) } Je reçois l’erreur suivante: […]

Quelles sont les principales différences entre «gc» et «gccgo»?

Quelles sont les principales différences entre les deux compilateurs Go, gc et gccgo? Construire la performance? Performances d’exécution? Options de ligne de commande? Licence? Je ne cherche pas des avis sur ce qui est le mieux, juste un aperçu de base de leurs différences, afin que je puisse décider lequel est le mieux adapté à […]

Go: panique: erreur d’exécution: adresse de mémoire non valide ou déréférence de pointeur nul

Lors de l’exécution de mon programme Go, il panique et renvoie les éléments suivants: panic: runtime error: invalid memory address or nil pointer dereference [signal 0xb code=0x1 addr=0x38 pc=0x26df] goroutine 1 [running]: main.getBody(0x1cdcd4, 0xf800000004, 0x1f2b44, 0x23, 0xf84005c800, …) /Users/matt/Dropbox/code/go/scripts/cron/fido.go:65 +0x2bb main.getToken(0xf84005c7e0, 0x10) /Users/matt/Dropbox/code/go/scripts/cron/fido.go:140 +0x156 main.main() /Users/matt/Dropbox/code/go/scripts/cron/fido.go:178 +0x61 goroutine 2 [syscall]: created by runtime.main /usr/local/Cellar/go/1.0.3/src/pkg/runtime/proc.c:221 goroutine […]

Comment faire une expression régulière insensible à la casse dans Go?

Maintenant, bien sûr, je pourrais écrire mon expression régulière pour gérer les deux cas, comme regexp.Comstack(“[a-zA-Z]”) , mais mon expression régulière est construite à partir d’une chaîne donnée par l’utilisateur: reg, err := regexp.Comstack(ssortingngs.Replace(s.Name, ” “, “[ \\._-]”, -1)) Où s.Name est le nom. Ce qui pourrait être quelque chose comme ‘North by Northwest’. Maintenant, […]

Quelle est la différence entre int et int64 dans Go?

J’ai une chaîne contenant un entier (qui a été lu dans un fichier). J’essaie de convertir la ssortingng en int utilisant strconv.ParseInt() . ParseInt exige que je fournisse une taille en bits (les tailles de bits 0, 8, 16, 32 et 64 correspondent à int, int8, int16, int32 et int64). L’entier lu dans le fichier […]

Comment gérer les requêtes http de différentes méthodes vers / dans Go?

J’essaie de trouver le meilleur moyen de gérer les demandes vers / et uniquement / dans Go et de gérer différentes méthodes de différentes manières. Voici le meilleur que j’ai inventé: package main import ( “fmt” “html” “log” “net/http” ) func main() { http.HandleFunc(“/”, func(w http.ResponseWriter, r *http.Request) { if r.URL.Path != “/” { http.NotFound(w, […]

Nom de package correct pour tester avec le langage Go

J’ai vu plusieurs stratégies de nommage de packages de tests différentes dans Go et je voulais savoir quels étaient les avantages et les inconvénients de chacun et lesquels utiliser. Stratégie 1: Nom du fichier: github.com/user/myfunc.go package myfunc Nom du fichier de test: github.com/user/myfunc_test.go package myfunc Voir bzip2 pour un exemple. Stratégie 2: Nom du fichier: […]

Go / Golang écrire journal pour classer

J’essaie d’écrire dans un fichier journal avec Golang. J’ai essayé plusieurs approches, qui ont toutes échoué. C’est ce que j’ai essayé: func TestLogging(t *testing.T) { if !FileExists(“logfile”) { CreateFile(“logfile”) } f, err := os.Open(“logfile”) if err != nil { t.Fatalf(“error: %v”, err) } // attempt #1 log.SetOutput(io.MultiWriter(os.Stderr, f)) log.Println(“hello, logfile”) // attempt #2 log.SetOutput(io.Writer(f)) log.Println(“hello, […]

Que signifie trois points «./…» dans les invocations en ligne de commande Go?

Si vous exécutez les tests de Golang sur CI CI, vous téléchargerez toutes vos dépendances avec trois points : go get -d -v ./… && go build -v ./… Qu’est-ce que ./… indique ou développe? J’ai fait des recherches mais cela ne semble pas être une convention Unix.