В golang, как преобразовать строку в двоичную строку? Пример: «CC» становится 10000111000011Golang: Как преобразовать строку в двоичное представление
ответ
Это простой способ сделать это:
func stringToBin(s string) (binString string) {
for _, c := range s {
binString = fmt.Sprintf("%s%b",binString, c)
}
return
}
Как я включил в комментарии к другому ответу вы также можете использовать вариант "%s%.8b"
который будет подушечка строки с ведущие нули, если вам нужно или хотите, чтобы представлять 8 бит ... это, однако, не имеет никакого значения, если ваш персонаж требует больше, чем 8 бит для представления, такие как греческие символы:
Φ 1110100110
λ 1110111011
μ 1110111100
Или эти математические символы печати 14 бит:
≠ 10001001100000
⊂ 10001010000010
⋅ 10001011000101
Итак, предостережение emptor: пример здесь означает простое демонстрационное изображение, которое соответствует критериям исходного сообщения, а не надежное средство для работы с представлениями base2 кодов Unicode.
Во-первых, двоичное представление «CC» имеет значение «0100001101000011», вам нужно позаботиться о ведущем 0, иначе ваша строка может быть получена разными способами.
func binary(s string) string {
res := ""
for _, c := range s {
res = fmt.Sprintf("%s%.8b", res, c)
}
return res
}
Это дает желаемый результат: `binary (" CC ") =" 0100001101000011 ".
+1, но если вы хотите добавить ведущий 0, то меньше кода для записи 'res = fmt.Sprintf («% s% .8b », res, c)' note the. между% и 8 – Snowman
Спасибо, я не знал о синтаксисе. И это, вероятно, более эффективно. –
Другой подход
func strToBinary(s string, base int) []byte {
var b []byte
for _, c := range s {
b = strconv.AppendInt(b, int64(c), base)
}
return b
}
- 1. Python: преобразовать строку в ее двоичное представление
- 2. Как преобразовать двоичное представление строки обратно в строку?
- 3. Как преобразовать представление строк двоичного в двоичное?
- 4. Как преобразовать отрицательное двойное в двоичное представление?
- 5. Как преобразовать шестнадцатеричный символ в 4-битное двоичное представление?
- 6. Как преобразовать срез в строку в golang?
- 7. Как преобразовать [] строку в [] float64 в Golang?
- 8. двоичное представление
- 9. Как преобразовать целое число в двоичное представление в VHDL?
- 10. Извлечь двоичное представление аудиофайла
- 11. Golang: Как преобразовать строку в [] int?
- 12. Golang как преобразовать струнный срез в строку?
- 13. Как преобразовать двоичный файл в другое двоичное представление, например изображение
- 14. Преобразование mpz_t в двоичное представление
- 15. Как получить двоичное представление UInt64 в OCaml
- 16. Как преобразовать строку в представление Base-10?
- 17. Как преобразовать двоичное представление строки обратно в исходную строку в Python?
- 18. преобразовать байт в строку в golang
- 19. Преобразовать интерфейс {} в [] строку в Golang
- 20. преобразовать целое число python в его двоичное представление, подписанное
- 21. Как преобразовать массив (00s ... 11s), двоичное представление каждого символа, в строку char
- 22. Python, преобразовать представление двоичного кода в реальное двоичное значение
- 23. Двоичное представление .NET Decimal
- 24. двоичное представление «jal printf»
- 25. Двоичное представление двойного
- 26. Двоичное представление с союзом
- 27. Golang, Go: преобразовать строку в поплавок номер
- 28. Двоичное представление строки в файл и в строку снова
- 29. Как преобразовать NSInteger в двоичное (строковое) значение
- 30. компактное двоичное представление json
Что вы пробовали? Вы просмотрели документацию для https://golang.org/pkg/encoding/binary/? – elithrar