要約を使用して、いくつかのGoLang文字列

ほとんどの文字列にさらされるべきプロジェクトでは、とありますが、例えば、私は文字列であると考えているほとんどがAPIを書いている時にフロントデスクで送信された要求を受信し、我々はいくつかの処理GoLangの文字列のためにそれに続きます小さな合計になるように。

 

出力文字列の最初に、フォーマット

package main
import "fmt"
func main() { fmt.Println("Hello") } 

私は単純に十分な、我々は少し深くしている、これはコードのすべての入力のための最初のエントリであると信じています。

package main
import "fmt"
func main() { fmt.Printf("Hi, my name is %v","BoB") } 

我々はここで、彼らは追加して、書式設定を使用したいコンテンツの一部、および他のC言語とどのような似ている、との文字出力を挿入する必要があるとき、私は特定のパラメータのどのようなこれらの動詞と機能を列挙されています:

動詞 機能
体積% に応じた出力値のもともと値
%+ V 構造体のフィールド名と値に基づいて%のVが展開されています
%#V 言語構文の出力値を行きます
%T 型と値の構文 - 言語出力を行きます
%% 出力%本体
%bの バイナリモードで表示された整数
%。 整数進方法で表示しました
%D 整数小数方法で表示しました
%バツ 整数は、16進モードで表示しました
%バツ 整数は、16進数、大文字で表示しました
%U Unicode文字
%F フロート
%P ポインタは、16進数で表示しました

私たちの一部は、一般的に使用されていない、あなたはそれが再び捜査にも使用することができ、彼を思い出すことができません。

第二に、文字列型変換

私たちは、クライアントが送信した要求を受信したとき、私たちは、このような文字列の順番として、二次処理を、使用するために必要とされるデータのほとんどint、ターンint64などは、次は私達が回す方法を確認するために内側に移動します。

    AByString := "1"
	BByInt := 2
	
	//类型转换成int CByInt,err := strconv.Atoi(AByString) if err != nil { fmt.Errorf("类型转换出错 %v",err) } fmt.Println(BByInt + CByInt) 

それはだstring回しますint

    AByString := "1"
    
    //字符串转int64
	DByInt64, err := strconv.ParseInt(AByString, 10, 64) //int64转string EByString := strconv.FormatInt(DByInt64, 10) EByInt64, err := strconv.ParseInt(EByString, 10, 64) fmt.Println(EByInt64 + DByInt64) 

ここでは、使用しました:

  • 文字列のターンint64モード
  • int64型ターン文字列

strconvパッケージが多くのAPIは、データ型を変換するために使用され、それらをここにリストしていない、と含まれている私たちの共通の型変換。

第三に、復号化暗号化された文字列

クリアテキストで送信された場合は、暗号化と復号化は非常に恐ろしいことですが、私は2つの一般的な暗号化アルゴリズムを共有しましょう、そのようなデータ伝送など内部の必須項目、以下のとおりです。

Base64で

最初は、私たちが直接、十分なを使用し、言語は暗号化モジュールを提供して行き、可逆暗号化アルゴリズムをbase64です。


import (
	"fmt"
	"encoding/base64"
) func main() { // 声明一个字符串,并转换为byte数组 input := []byte("hello world") // base64编码 encodeString := base64.StdEncoding.EncodeToString(input) fmt.Println(encodeString) // 对上面的编码结果进行base64解码 decodeBytes, err := base64.StdEncoding.DecodeString(encodeString) if err != nil { fmt.Println(err) } fmt.Println(string(decodeBytes)) } 

データの暗号化と復号化のこの部分でのGo言語はかなり良い行われます。

MD5

それの例を参照するには、ほとんど直接MD5とBASE64:


import (
	"fmt"
	"crypto/md5"
) func main() { // 声明一个字符串,并转换为byte数组 input := []byte("hello world") has := md5.Sum(input) md5str1 := fmt.Sprintf("%x", has) //将[]byte转成16进制 fmt.Println(md5str1) } 

そんなにについての文字列関連するコンテンツ。



おすすめ

転載: www.cnblogs.com/zhangzhiping35/p/11059483.html