我是靠谱客的博主 健壮毛豆,最近开发中收集的这篇文章主要介绍输入流和字节数组相互转换,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

输入流转字节数组

第一种

import org.springframework.util.FileCopyUtils; //导入方法依赖的package包/类
private Class<?> doLoadClass(String name) throws ClassNotFoundException {
String internalName = StringUtils.replace(name, ".", "/") + ".class";
InputStream is = this.enclosingClassLoader.getResourceAsStream(internalName);
if (is == null) {
throw new ClassNotFoundException(name);
}
try {
//输入流转字节数组
byte[] bytes = FileCopyUtils.copyToByteArray(is);
bytes = applyTransformers(name, bytes);
Class<?> cls = defineClass(name, bytes, 0, bytes.length);
// Additional check for defining the package, if not defined yet.
if (cls.getPackage() == null) {
int packageSeparator = name.lastIndexOf('.');
if (packageSeparator != -1) {
String packageName = name.substring(0, packageSeparator);
definePackage(packageName, null, null, null, null, null, null, null);
}
}
this.classCache.put(name, cls);
return cls;
}
catch (IOException ex) {
throw new ClassNotFoundException("Cannot load resource for class [" + name + "]", ex);
}
}

第二种:

导入依赖

<!-- https://mvnrepository.com/artifact/commons-io/commons-io -->
<dependency>
<groupId>commons-io</groupId>
<artifactId>commons-io</artifactId>
<version>2.4</version>
</dependency>
import org.apache.commons.io.IOUtils;
byte[] bytes = IOUtils.toByteArray(inputStream);

字节数组转输入流

String str = "budaye";
ByteArrayInputStream in = new ByteArrayInputStream(str.getBytes("UTF-8"));

ByteArrayInputStream是字节数组输入流,它继承于InputStream。

它包含一个内部缓冲区,该缓冲区包含从流中读取的字节。

如果我们想要将字符串或者字节数组转换成字符流,可以使用ByteArrayInputStream类。

最后

以上就是健壮毛豆为你收集整理的输入流和字节数组相互转换的全部内容,希望文章能够帮你解决输入流和字节数组相互转换所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(46)

评论列表共有 0 条评论

立即
投稿
返回
顶部