کانال بله, جهت پشتیبانی و اطلاع رسانی کانال بله, جهت پشتیبانی و اطلاع رسانی
عضویت

آموزش رشته ها در سالیدیتی

Solidity از String Literal با استفاده از دو گیومه (") و (') پشتیبانی می‌کند و رشته را به‌عنوان یک نوع داده برای اعلام متغیری از نوع String ارائه می‌دهد.

    pragma solidity ^0.5.0;

contract SolidityTest {
   string data = "test";
}

در مثال بالا، "test" یک‌رشته واقعی و داده یک متغیر رشته است. Solidity امکان تبدیل داخلی بین بایت‌ها به رشته و بالعکس را فراهم می‌کند. در Solidity می‌توانیم به‌راحتی String literal را به یک متغیر نوع byte32 اختصاص دهیم.

    pragma solidity ^0.5.0;

contract SolidityTest {
   bytes32 data = "test";
}

Escape Characters

Character & Description
Sr.No.

\n

Starts a new line.

1

\\

Backslash

2

\'

Single Quote

3

\"

Double Quote

4

\b

Backspace

5

\f

Form Feed

6

\r

Carriage Return

7

\t

Tab

8

\v

Vertical Tab

9

\xNN

Represents Hex value and inserts appropriate bytes.

10

\uNNNN

Represents Unicode value and inserts UTF-8 sequence.

11

تبدیل بایت به رشته

بایت‌ها را می‌توان با استفاده از سازنده string() به String تبدیل کرد.

    bytes memory bstr = new bytes(10);
    string message = string(bstr);  
   

کد زیر را امتحان کنید تا متوجه شوید که رشته در Solidity چگونه کار می‌کند.

    pragma solidity ^0.5.0;

    contract SolidityTest {   
       constructor() public{       
       }
       function getResult() public view returns(string memory){
          uint a = 1; 
          uint b = 2;
          uint result = a + b;
          return integerToString(result); 
       }
       function integerToString(uint _i) internal pure 
          returns (string memory) {
          
          if (_i == 0) {
             return "0";
          }
          uint j = _i;
          uint len;
          
          while (j != 0) {
             len++;
             j /= 10;
          }
          bytes memory bstr = new bytes(len);
          uint k = len - 1;
          
          while (_i != 0) {
             bstr[k--] = byte(uint8(48 + _i % 10));
             _i /= 10;
          }
          return string(bstr);
       }
    }

   

خروجی :

0: string: 3
1402/01/14 958
رمز عبور : tahlildadeh.com یا www.tahlildadeh.com
نظرات شما

نظرات خود را ثبت کنید...