[] byte to string ошибка. строка ([] byte [: n]) ошибка тоже. Кстати, например, значение sha1 для строки для имени файла. Нужен utf-8? Или что-нибудь еще? спасибо.golang - Convert [] byte to string error
ответ
В Go вы преобразовать массив байтов (UTF-8) в строку, выполнив string(bytes)
так в вашем примере, это должно быть string(byte[:n])
при условии byte
является срез байтов.
Я только что попробовал, как this.but не удалось. На самом деле, мне нужно преобразовать значение sha1 файла в строку, названное по имени файла –
сработало - 05.01.2018 – JohannaNoobie
Сначала вы получаете все эти негативные отзывы, потому что вы не предоставили никакого кода. Во-вторых, без хорошего примера. Это то, что я хотел бы сделать
var Buf bytes.Buffer
Buf.Write([]byte)
myString := Buf.String()
Buf.Reset() // Reset the buffer to reuse later
или еще лучше
myString := string(someByteArray[:n])
см here также см @ комментарий JimB в
Это, как говорится, если вы поможете, что цели вашей программы, пожалуйста, предоставьте и пример от того, что вы пробовали, ожидаемых результатов и ошибок.
Большое спасибо. EncodeToString возвращает шестнадцатеричное кодирование src.it. –
Я не уверен, что я понимаю вопрос правильно, но может быть:
var ab20 [20]byte = sha1.Sum([]byte("filename.txt"))
var sx16 string = fmt.Sprintf("%x", ab20)
fmt.Print(sx16)
В то время как технически корректно, в Go рекомендуется использовать 'var' и объявлять каждый тип, не вызывая их. https://play.golang.org/p/JUl57LKfzk – JimB
Ах! "%Икс"! Вот что я делал неправильно! :) Я использовал неправильный заполнитель Sprintf, duh ... –
Самый простой метод я использую для преобразования byte
в string
заключается в следующем:
myString := string(myBytes[:])
Этот работает для меня и, кажется, самый простой – Matthias
'[] byte' может быть преобразован непосредственно в' string'. Пожалуйста, покажите пример того, какая у вас проблема. – JimB
например. file hash value to string for filename –
Если вы просто покажете нам пример того, что вы пробовали, было бы очень просто ответить на вопрос, а не ждать, пока мы угадаем правильный ответ. – JimB