Чтобы преобразовать байты в строку в Solidity, вы можете использовать тип bytesи функцию toString. Вот пример:
pragma solidity ^0.8.0;
contract BytesToString {
function bytesToString(bytes memory _bytes) public pure returns (string memory) {
return string(_bytes);
}
}
В этом примере функция bytesToStringпринимает параметр bytesи преобразует его в строку, используя приведение типов string.
Другой подход — использовать функцию abi.decodeдля преобразования байтов в строку. Вот пример:
pragma solidity ^0.8.0;
contract BytesToString {
function bytesToString(bytes memory _bytes) public pure returns (string memory) {
return string(abi.decode(_bytes, (bytes)));
}
}
В этом примере abi.decodeиспользуется для декодирования байтов как типа bytes, а затем преобразуется в строку.