我想用 Go 編寫一個代碼,它檢查 File1 中的字符是否存在于 File2 中。如果存在,則跳過;如果不存在,則將其寫入文件 2..你能幫幫我嗎?我無法在此處粘貼我的代碼,但您可以從此處查看: https://go.dev/play/p/IX_ibwya1B1
1 回答

富國滬深
TA貢獻1790條經驗 獲得超9個贊
轉換[]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
- 1 回答
- 0 關注
- 109 瀏覽
添加回答
舉報
0/150
提交
取消