【发布时间】:2011-12-26 05:24:09
【问题描述】:
我是 Java 新手,正在学习 Java ME 开发。我陷入了这种转换。请帮我将StringBuffer 转换为InputStream。谢谢!
【问题讨论】:
标签: java java-me inputstream midlet stringbuffer
我是 Java 新手,正在学习 Java ME 开发。我陷入了这种转换。请帮我将StringBuffer 转换为InputStream。谢谢!
【问题讨论】:
标签: java java-me inputstream midlet stringbuffer
查看课程ByteArrayInputStream。例如:
public static InputStream fromStringBuffer(StringBuffer buf) {
return new ByteArrayInputStream(buf.toString().getBytes());
}
请注意,您可能希望在 getBytes() 方法上使用显式字符编码,例如:
return new ByteArrayInputStream(buf.toString().getBytes(StandardCharsets.UTF_8));
(感谢@g33kz0r)
【讨论】:
return new ByteArrayInputStream(sb.toString().getBytes(StandardCharsets.UTF_8));
看看您是否可以将StringBuffer 转换为byte[],然后使用ByteArrayInputStream。
【讨论】:
这是我在Java Examples找到的最佳答案
import java.io.ByteArrayInputStream;
import java.io.InputStream;
public class StringBufferToInputStreamExample {
public static void main(String args[]){
//create StringBuffer object
StringBuffer sbf = new StringBuffer("StringBuffer to InputStream Example");
/*
* To convert StringBuffer to InputStream in Java, first get bytes
* from StringBuffer after converting it into String object.
*/
byte[] bytes = sbf.toString().getBytes();
/*
* Get ByteArrayInputStream from byte array.
*/
InputStream inputStream = new ByteArrayInputStream(bytes);
System.out.println("StringBuffer converted to InputStream");
}
}
【讨论】: