【Solidity】日本語の文字列(マルチバイト文字)を扱うには?

Solidityで日本語の文字列(マルチバイト文字)を扱う方法について解説します。

構文

Solidityで日本語の文字列を扱うには、文字列の前にunicodeプレフィックスを付けます。

unicode"文字列"

サンプルコード

実際のコードを見た方が分かり易いと思いますので、以下にサンプルコードを記します。

// SPDX-License-Identifier: GPL-3.0

pragma solidity >=0.7.0 <0.9.0;

contract Test {

    // 日本語の文字列を変数に代入
    string greeting = unicode"こんにちは😃";

    function sayHello() public view returns(string memory) {
        return greeting;
    }

}

日本語など英語以外の文字列(マルチバイト文字)を扱う場合、取り敢えずunicodeのプレフィックスを付けてやればOKです。

タイトルとURLをコピーしました