Android - 将字符串转换为字节[]

arraysAndroid

1个回答

写回答

15956997024

2025-07-09 15:33

+ 关注

Android
Android

# Android中将字符串转换为字节数组的方法

Android开发中,经常会遇到将字符串转换为字节数组的需求,这是因为在网络通信、文件操作等场景中,经常需要以字节流的形式传输数据。本文将介绍在Android中如何将字符串转换为字节数组,并提供实际案例代码。

## 1. 使用getBytes方法

Android中,最简单的方法是使用字符串的getBytes方法。该方法会将字符串转换为字节数组,可以根据指定的字符集进行转换。

Java

String inputString = "Hello, Android!";

byte[] byteArray = inputString.getBytes(); // 使用默认字符集

上述代码将字符串"Hello, Android!"转换为字节数组,并存储在byteArray中。需要注意的是,getBytes方法使用默认字符集,如果需要指定字符集,可以传递一个Charset参数。

Java

String inputString = "你好,Android!";

Charset charset = Charset.forName("UTF-8");

byte[] byteArray = inputString.getBytes(charset);

## 2. 使用Base64进行编码

在一些情况下,我们可能需要将字符串转换为经过Base64编码的字节数组,特别是在进行数据传输时。以下是一个使用Android的Base64工具类的例子。

Java

import Android.util.Base64;

String inputString = "Hello, Android!";

byte[] byteArray = Base64.encode(inputString.getBytes(), Base64.DEFAULT);

上述代码使用了AndroidBase64工具类,将字符串"Hello, Android!"转换为Base64编码的字节数组。可以根据实际需求选择合适的Base64参数,例如Base64.DEFAULT

## 3. 按指定字符集转换

有时候,我们需要按照特定的字符集将字符串转换为字节数组。下面是一个按照UTF-16字符集转换的例子:

Java

String inputString = "你好,Android!";

Charset charset = Charset.forName("UTF-16");

byte[] byteArray = inputString.getBytes(charset);

在这个例子中,字符串"你好,Android!"被转换为UTF-16字符集的字节数组。

##

本文介绍了在Android中将字符串转换为字节数组的几种方法,包括使用getBytes方法和使用Base64进行编码。根据实际需求,选择合适的方法可以更好地满足开发的需要。在进行字符串到字节数组的转换时,特别要注意字符集的选择,以确保数据在不同系统之间正确地传输和解析。

举报有用(4分享收藏

Copyright © 2025 IZhiDa.com All Rights Reserved.

知答 版权所有 粤ICP备2023042255号