via: http://blog.csdn.net/hanqunfeng/article/details/4364583
1.String to InputStream
String str = "String与InputStream相互转换";
InputStream in_nocode = new ByteArrayInputStream(str.getBytes());
InputStream in_withcode = new ByteArrayInputStream(str.getBytes("UTF-8"));
2.InputStream to String
这里提供几个方法。
方法1:
public String convertStreamToString(InputStream is) {
BufferedReader reader = new BufferedReader(new InputStreamReader(is));
StringBuilder sb = new StringBuilder();
String line = null;
try {
while ((line = reader.readLine()) != null) {
sb.append(line + "/n");
}
} catch (IOException e) {
e.printStackTrace();
} finally {
try {
is.close();
} catch (IOException e) {
e.printStackTrace();
}
}
return sb.toString();
}
方法2:
public String inputStream2String (InputStream in) throws IOException {
StringBuffer out = new StringBuffer();
byte[] b = new byte[4096];
for (int n; (n=in.read(b))!=-1;) {
out.append(new String(b,0,n));
}
return out.toString();
}
方法3:
public static String inputStream2String(InputStream is) throws IOException{
ByteArrayOutputStream baos = new ByteArrayOutputStream();
int i=-1;
while((i=is.read())!=-1){
baos.write(i);
}
return baos.toString();
}
相关推荐
总结来说,Java中InputStream、String和File的相互转化是编程中常见的操作,理解并掌握这些转换方法对于提升开发效率和代码质量至关重要。在进行转换时,要结合具体场景,选择合适的方法,同时注意性能优化和资源...
在Java中,我们可能需要使用`String.getBytes()`和`new String(byte[])`方法进行字节与字符串之间的转换。 5. **数据库存储**:在项目中包含的"ZXQQ.mdb"文件可能是Access数据库,用于存储聊天记录或其他用户信息。...
在Java编程中,String对象和Byte...总之,Java中的String与Byte类型的转换是编程中不可或缺的部分,尤其在网络编程中,理解这两种类型之间的转换方式及其在网络数据交换中的作用,对于编写高效、可靠的程序至关重要。
- 使用`BufferedReader`和`InputStreamReader`:首先,通过`InputStreamReader`将InputStream转换为字符流,然后使用`BufferedReader`逐行读取并拼接成字符串。 ```java InputStream is = ...; ...
在Java编程中,将字符串(String)与图像(Image)相互转换是一项常见的需求,特别是在处理用户输入、数据存储或显示图形信息时。这篇博文将探讨如何在Java中实现这一过程,主要涉及`Image`对象与`String`对象之间的转换...
在Java编程中,有时我们可能需要将一个已经写入数据的`OutputStream`转换为`InputStream`,以便重新读取这些数据。这种情况通常出现在临时存储或处理数据时,例如在网络传输或者存储到内存中的场景。本篇文章将深入...
本篇文章将详细介绍如何在Android中使用Base64来实现文件与String之间的相互转换。 一、Base64编码原理 Base64是一种基于64个字符的编码方法,这些字符包括大小写字母、数字以及"+"和"/",还有一个用于填充的字符"=...
Base64是一种在互联网上广泛使用的编码方式,它将任意二进制数据转换为可打印的ASCII字符,以便在网络传输中不受限制。在Java中,处理Base64编码和解码通常通过`java.util.Base64`这个类来实现,这个类在Java 8及...
11. **泛型**:自Java 5引入泛型,可以指定容器存储的数据类型,增强了类型安全,减少了强制类型转换。 12. **反射**:Java反射API允许在运行时检查类、接口、字段和方法的信息,甚至可以在运行时动态创建对象和...
在Java编程语言中,`String`对象与`byte[]`数组之间的转换是常见的操作之一。理解这两者之间的关系对于处理文本数据、网络通信及文件读写等任务至关重要。 #### 一、String与byte[]的基本概念 - **String**: 在...
4. **数据编码与解码**:由于Socket传输的是字节流,所以通常需要将字符串等数据转换成字节流(如UTF-8编码)再发送,接收端则需要反向解码。 5. **多线程处理**:为了实现多用户同时在线聊天,服务器端通常需要为...
在Java中,`String`对象可以转换为字节数组,然后写入`OutputStream`;接收端从`InputStream`读取字节数组,再转换回`String`。 5. **并发编程**: 在聊天室应用中,可能会有多个用户同时发送消息。因此,我们需要...
Java 的 IO 体系分 Input/Output 和 Reader/Writer 两类,区别在于 Reader/Writer 在读写文本时能自动转换内码。基本上,所有的 IO 类都是配对的,即有 XxxInput 就有一个对应的 XxxOutput。 Java 的输入/输出...
此外,Java的`String`类提供了许多与字符编码相关的功能,如`getBytes()`方法可以将字符串转换为字节数组,使用默认的平台字符集,或者指定的`Charset`。而`new String(bytes, charset)`则可以根据给定的字节数组和...
通过解析Java的运行机制,我们了解到Java结合了编译型与解释型语言的特点,先由编译器将源代码转换为字节码,再由虚拟机进行解释执行,确保了平台无关性。 Java运行环境(JRE)与开发工具包(JDK)的区别也被清晰...
首先,Java提供了一个名为`java.io`的包,其中包含了用于读写文件的基本类,如`File`, `FileReader`, `FileWriter`, `BufferedReader`, `BufferedWriter`, `InputStream`, `OutputStream`等。`File`类主要用来创建、...
- `StringBufferInputStream`(已废弃)允许将一个字符串缓冲区转换为输入流,但通常推荐使用`StringReader`替代。 2. **对象序列化**: - `ObjectInputStream`和`ObjectOutputStream`用于对象的序列化和反序列化...
在Java编程领域,Apache POI 是一个非常流行的库,它允许开发者读取、写入以及修改Microsoft Office格式的文件,尤其是Excel(.xlsx 和 .xls)文件。在本项目"poi_java_excel.zip"中,我们将重点探讨如何使用Apache ...
熟悉InputStream、OutputStream、Reader、Writer类,以及缓冲流、转换流和对象流的概念,是进行数据输入输出的基础。 7. **多线程**:Java内置了对多线程的支持,理解Thread类、Runnable接口以及同步机制(如...