将字符串转换为输入流的 Java 程序
原文:https://www . geesforgeks . org/Java-program-to-convert-string-to-inputstream/
给定一个字符串,,任务是将该字符串转换为 InputStream,如下图所示。
插图:
Input : String : "Geeks for Geeks"
Output : Input Stream : Geeks for Geeks
Input : String : "A computer science portal"
Output : Input stream : A computer science portal
为了达到目标,我们需要使用 ByteArrayInputStream。那么让我们来讨论它是如何做到的?
我们可以通过使用字节数组输入流类将字符串转换为输入流对象。ByteArrayInputStream 是 InputStream 类中的一个子类。在 ByteArrayInputStream 中,有一个包含从流中读取的字节的内部缓冲区。
进场:
- 获取字符串的字节数。
- 使用字符串的字节创建一个新的字节数组
- 将字节数组输入流对象分配给输入流变量。
- 缓冲区包含从流中读取的字节。
- 打印输入流。
示例:
Java 语言(一种计算机语言,尤用于创建网站)
// Java Program to Convert String to InputStream
// Using ByteArrayInputStream
// Importing required libraries
import java.io.*;
import java.io.BufferedReader;
import java.io.ByteArrayInputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.nio.charset.Charset;
// Main class
public class GFG {
// main driver method
public static void main(String[] args) throws IOException {
// Custom inout string as an input
String string = "Geeks for Geeks";
// Printing the above string
System.out.print("String : " + string);
// Now, using ByteArrayInputStream to
// get the bytes of the string, and
// converting them to InputStream
InputStream stream = new ByteArrayInputStream(string.getBytes
(Charset.forName("UTF-8")));
// Creating an object of BufferedReader class to
// take input
BufferedReader br = new BufferedReader(new InputStreamReader(stream));
// Printing the input stream
// using rreadLine() method
String str = br.readLine();
System.out.print("\nInput stream : ");
// If string is not NULL
while (str != null) {
// Keep taking input
System.out.println(str);
str = br.readLine();
}
}
}
Output
String : Geeks for Geeks
Input stream : Geeks for Geeks
版权属于:月萌API www.moonapi.com,转载请注明出处