Convertir una cadena a otros tipos
Las cadenas son una secuencia de caracteres utilizados para representar texto legible. Se utilizan para almacenar y manipular información basada en texto, como nombres de funciones, argumentos, datos clave-valor e interfaces con sistemas externos. Las cadenas a menudo pueden necesitar ser convertidas a otros tipos de datos para un procesamiento y almacenamiento eficientes.
Cadena a bytesN
Algunos sistemas utilizan formatos binarios donde los datos necesitan ser representados como un arreglo de bytes de longitud fija para almacenamiento o procesamiento. Por ejemplo, hashes o identificadores de longitud fija. Convertir cadenas a un tamaño de bytes fijo asegura que los datos se ajusten a las restricciones de tamaño requeridas.
- Rust
- JS
- Python
use soroban_sdk::{String, BytesN, Env, FromVal};
pub fn string_to_bytesN(env: &Env, string: String) -> BytesN<32> {
BytesN::from_val(env, &string.to_val())
}
import StellarSdk = require('@stellar/stellar-sdk');
// Example string
const stringValue = 'Hello, Stellar!';
// Convert the string to bytes format
const byteValue = Buffer.from(stringValue, 'utf-8');
import stellar_sdk
string_value.encode()
string_value
es el valor de la cadena que se convertirá a bytes..encode()
es un método que convierte la cadena a bytes.
Cadena a dirección
Una dirección recibida en una entrada de usuario puede ser de tipo cadena y necesitarías convertirla a un tipo dirección para realizar validaciones, transacciones u otras operaciones dentro de tu contrato inteligente.
- Rust
- JS
use soroban_sdk::{Address, Env, String};
pub fn string_to_address(string: String) -> Address {
Address::from_string(&string)
}
const StellarSdk = require("@stellar/stellar-sdk");
const stringToAddress = StellarSdk.Address.fromString(stellarAddress);
stellarAddress
es el valor de la cadena que se convertirá en una dirección.StellarSdk.Address.fromString()
es un método que convierte una cadena en una dirección.
Cadena a ScVal
Al llamar a funciones o métodos que esperan tipos ScVal, necesitas convertir tus datos de cadena a ScVal para que la llamada sea exitosa. Por ejemplo, si tu contrato inteligente necesita almacenar o manipular una cadena de entrada de usuario dentro de su estado o utilizarla como parte de su lógica, deberías convertir la cadena a un tipo ScVal para integrarla con las operaciones del contrato.
- Rust
- JS
- Python
use soroban_sdk::{String, Env, Val};
pub fn string_to_val(env: &Env, string: String) -> Val {
string.to_val()
}
import StellarSdk from "@stellar/stellar-sdk";
// Example string value
const stringValue = "Hello, Stellar!";
// Convert the string to ScVal
const stringToScVal = StellarSdk.xdr.ScVal.scvString(stringValue);
import stellar_sdk
string_to_sc_val = stellar_sdk.scval.to_string(string_value)
string_value
es el valor de la cadena que se convertirá en un ScValstellar_sdk.scval.to_string()
convierte el valor de la cadena en un ScVal
Guías en esta categoría:
📄️ Convertir una dirección a otros tipos
Convertir una dirección a otros tipos
📄️ Convertir de bytes a otros tipos
Convertir de bytes a otros tipos
📄️ Convertir un ScVal a otro tipo
Convertir un ScVal a otro tipo
📄️ Convertir una cadena a otros tipos
Convertir una cadena a otros tipos