go语言中bytes包的使用方法
admin
2023-02-16 02:00:06
0

这篇文章给大家分享的是go语言中bytes包的使用方法,相信大部分人都还没学会这个技能,为了让大家学会,给大家总结了以下内容,话不多说,一起往下看吧。

代码:

package main

import (
"bytes"
"fmt"
)

func main() {
println("hello,world")
buff1 := make([]byte, 2)
writeInt16(buff1, uint16(15))

buff2 := make([]byte, 2)
writeInt16(buff2, uint16(13))
res := bytes.Compare(buff1, buff2)
fmt.Println(res)

buff3 := []byte("hello world hello world")
seq := []byte("hello")
res = bytes.Count(buff3, seq)
fmt.Println(res)

contains := bytes.Contains(buff3, seq)
println(contains)

res = bytes.Index(buff3, seq)
println(res)

res = bytes.LastIndex(buff3, seq)
println(res)

a := rune('e')
res = bytes.IndexRune(buff3, a)
println("indexRune:", res)

println("------------")
buff5 := []byte("abcabcabcabc")

arr := bytes.SplitN(buff5, []byte("a"), 3)
for _, v := range arr {
    for _, t := range v {
        print(t)
        print(",")
    }
    println("|")
}

println("------------")
buff6 := []byte("abc abc abc        abc")
arr = bytes.Fields(buff6)
for _, v := range arr {
    for _, t := range v {
        print(t)
        print(",")
    }
    println("|")
}

println("------------")
buff7 := []byte("abcabcabcabc")
arr = bytes.FieldsFunc(buff7, spilt)
for _, v := range arr {
    for _, t := range v {
        print(t)
        print(",")
    }
    println("|")
}

buff8 := []byte("我是中国人")
data := bytes.Runes(buff8)
for _, elem := range data {
    println(string(elem))
}

buff9 := bytes.Title(buff7)
println(string(buff9))

buff10 := bytes.Map(func(r rune) rune {
    if r == 'c' {
        return 'a'
    }
    return r
}, buff7)
println(string(buff10))

}

func spilt(r rune) bool {
if r == 'c' {
return true
}
return false
}

func writeInt16(buff []byte, data uint16) {
for i := 0; i < 2; i++ {
buff[i] = byte(data >> uint(i*8))
}
}

func printBytes(varBytes []byte) {
strByte := string(varBytes)
fmt.Println(strByte)
}

输出

hello,world
1
2
true
0
12
indexRune: 1

|
98,99,|
98,99,97,98,99,97,98,99,|

97,98,99,|
97,98,99,|
97,98,99,|
97,98,99,|

97,98,|
97,98,|
97,98,|
97,98,|





Abcabcabcabc
abaabaabaaba

关于go语言中bytes包的使用方法就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。

相关内容

热门资讯

美官员:美商船穿越霍尔木兹海峡... 当地时间5月5日,央视记者获悉,两艘搭载美军安全队员的美国商船在通过霍尔木兹海峡期间曾遭伊朗袭击。美...
日本参议员:对俄制裁损害日本国... 正在俄罗斯访问的日本国会参议员铃木宗男5月5日对媒体表示,日本对俄制裁同样损害了日本国家利益。铃木说...
美国务卿称美国正推进对伊朗“极... △美国国务卿鲁比奥(资料图)当地时间5月5日,美国国务卿鲁比奥在媒体简报会上称,美军正在霍尔木兹海峡...
伊朗外交部:敦促美方在外交问题... △伊朗外交部发言人巴加埃(资料图)据伊朗方面5月5日消息,伊朗外交部发言人巴加埃就当前伊美谈判进程表...
就在明晚,“极大雨”要来了! 据新华社消息,拥有哈雷彗星“血统”的宝瓶座η流星雨将于5月6日迎来极大,流星雨爱好者可在6日、7日夜...
原创 O... OPPO新机继续丰富,前有OPPO Find X9 Ultra、旗舰平板、小屏幕平板等,现有OPPO...
馆校合作丨南充科技馆走进仪陇县... 馆校合作 南充科技馆走进 NCSTM 仪陇县实验学校 天府科普研学游 4月29日上午,南充科技馆科普...
我国本土发现的首块月球陨石有重... 我国本土发现的首块月球陨石揭示了月球两次关键地质事件,并发现一种月球新矿物。 2026年世界地球日,...
马斯克的GPU也在摸鱼?狂囤几... 新智元报道 编辑:元宇 【新智元导读】马斯克囤了几十万张卡,结果只跑了11%?据媒体报道,xAI的...
原创 特... 4月24日,白宫以总统人事办公室的名义,向美国国家科学委员会的22名在任委员群发了一封冷冰冰的电子邮...