我正在编写一个 Web3j 应用程序,我想执行资金转移并将一个短文本字符串放在交易的十六进制编码数据字段中。我已成功转移资金,但似乎没有设置这些额外数据的参数。我该怎么做呢?
一旦这个工作,我相信我可以通过查看我的字符串
txObject.getInput();
(当然,这必须正确解码)这是正确的吗?
您可以使用交易的“数据”字段来放置该短文本。您必须编码以十六进制您的文本。例如,如果你想写“ABC”,你需要发送“0x414243”。不过,这将花费您更多的汽油!
public EthSendTransaction sendTransaction(
BigInteger gasPrice, BigInteger gasLimit, String to,
String data, BigInteger value)
throws IOException {
Transaction transaction = new Transaction(
getFromAddress(), null, gasPrice, gasLimit, to, value, data);
return web3j.ethSendTransaction(transaction)
.send();
}