如何检查文件中的字符,如果不存在用 GoLang 粘贴?

我想用 Go 编写一个代码,它检查 File1 中的字符是否存在于 File2 中。

如果存在,则跳过;如果不存在,则将其写入文件 2..

你能帮帮我吗?我无法在此处粘贴我的代码,但您可以从此处查看: https://go.dev/play/p/IX_ibwya1B1


米琪卡哇伊
浏览 66回答 1
1回答

富国沪深

转换[]byte为 a 后map[byte]bool,您可以使用逗号 ok符号来检查映射中是否存在字节。在您的示例中,您可以将 File2 的 []byte 转换为映射,然后循环查找 File1 中的字节以检查其中一些字节是否存在于映射中。func main() {    file1 := []byte("Hello world!")    file2 := []byte("Say Hello!")    m := convertToMap(file2)    for _, v := range file1 {        if _, ok := m[v]; !ok {            fmt.Println(string(v))        }    }}func convertToMap(b []byte) map[byte]bool {    m := map[byte]bool{}    for _, v := range b {        m[v] = true    }    return m}https://go.dev/play/p/VktG78V324d
打开App,查看更多内容
随时随地看视频慕课网APP