如何从一个byte数组中取出几位组成一个新的字节

如何从一个byte数组中取出几位组成一个新的字节,第1张

数组进行循环是最能让人想到,而且也是最不可取的!因为效率太低了!

可以考虑转换为IEnumerable<byte>开式,使用lambda表达式去取,虽然表面上没有循环了,但事实上程序转换后还是有循环的存在的,效率没有提高,但开发效率可以提高的。

可以使用StringBuild,将其数据全部装入,然后可以截断指定的byte,这种效率最好。

byte[] data = new byte[1024];

int len = fisread(data);

//循环将文件fileTexttxt中的内容读取到字节数组中

StringBuilder sb = new StringBuilder();

sbappend(new String(data, 0, len));

while (len != -1) {

    len = fisread(data);

    if (len != -1) {

        sbappend(new String(data, 0, len));

    }

}

Systemoutprintln(sb);

将byte转换为一个长度为8的byte数组,数组每个值代表bit / public static byte[] getBooleanArray(byte b) { byte[] array = new byte[8]; for (int i = 7; i >= 0; i--) { array[i] = (byte)(b & 1); b = (byte) (b >> 1); } retur

对这个String类型的字符串“中文”的编码方式 转换成 "IOS8859-1"类型。

下次这种类似的方法和用法 可以参照API中去查找 里面都有举例说明的哦。

API就是你java开发过程中的字典角色。用到的时候就去翻翻。

希望对你能有帮助

你的意思应该是如何设置byte数组的长度吧,数组的长度只有在初始化(声明)的时候可以设定,一旦设定好数组长度,后面就不能对长度进行修改,除非重新创建一个数组,然后把这个copy过去,不同语言数组的初始化方法不太一样,但都很类似,例如在c#中是" byte[] Bytes = new byte[Length];", 在C/C++中是" byte _bytes[Length] = {};"等

以上就是关于如何从一个byte数组中取出几位组成一个新的字节全部的内容,包括:如何从一个byte数组中取出几位组成一个新的字节、请问java输入流中当文件大于byte数组长度的时候,该如何循环读取、如何从BufferedReader中获取byte类型等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/9295537.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-26
下一篇 2023-04-26

发表评论

登录后才能评论

评论列表(0条)

保存