Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Java

โปรแกรม Java เพื่อแปลงสตริงเป็น InputStream


ในบทความนี้ เราจะเข้าใจวิธีการแปลงสตริงเป็น inputStream สตริงเป็นประเภทข้อมูลที่มีอักขระตั้งแต่หนึ่งตัวขึ้นไปและอยู่ในเครื่องหมายคำพูดคู่ (“ ”) คลาส InputStream คือ superclass ของคลาสทั้งหมดที่แสดงถึงอินพุต stream ของไบต์

ด้านล่างนี้เป็นการสาธิตสิ่งเดียวกัน -

สมมติว่าข้อมูลที่เราป้อนคือ

Input string:Java Program

ผลลัพธ์ที่ต้องการจะเป็น

จำนวนไบต์ที่สามารถใช้ได้ตอนต้น:12จำนวนไบต์ที่สามารถใช้ได้ตอนท้าย:10

อัลกอริทึม

ขั้นตอนที่ 1 - STARTขั้นตอนที่ 2 - ประกาศสตริงคือ input_string ซึ่งเป็นอ็อบเจ็กต์ของ InputStream คือ input_stream ขั้นตอนที่ 3 - กำหนดค่าขั้นตอนที่ 4 - ใช้ฟังก์ชัน read() เพื่ออ่านไบต์ และ .available() เพื่อดึงข้อมูลที่มีอยู่ bytes.Step 5 - แสดงผลขั้นตอนที่ 6 - หยุด

ตัวอย่างที่ 1

ที่นี่ เราเชื่อมโยงการดำเนินการทั้งหมดเข้าด้วยกันภายใต้ฟังก์ชัน 'หลัก'

<ก่อนหน้า นำเข้า java.io.ByteArrayInputStream นำเข้า java.io.InputStream นำเข้า java.nio.charset.StandardCharsets สาธิตคลาสสาธารณะ { โมฆะสาธารณะหลัก (สตริง args []) { สตริงอินพุต_สตริง ="โปรแกรม Java"; System.out.println("สตริงถูกกำหนดเป็น:" + input_string); ลอง { InputStream input_stream =ByteArrayInputStream ใหม่ (input_string.getBytes (StandardCharsets.UTF_8)); System.out.println("จำนวนไบต์ที่มีอยู่ที่จุดเริ่มต้น:" + input_stream.available()); input_stream.read(); input_stream.read(); System.out.println("จำนวนไบต์ที่ต่อท้าย:" + input_stream.available()); input_stream.close(); } catch (ข้อยกเว้น e) { e.getStackTrace(); } }}

ผลลัพธ์

สตริงถูกกำหนดเป็น:Java Programจำนวนไบต์ที่พร้อมใช้งานที่จุดเริ่มต้น:12จำนวนไบต์ที่สิ้นสุด:10

ตัวอย่างที่ 2

ในที่นี้ เราสรุปการดำเนินการเป็นฟังก์ชันที่แสดงการเขียนโปรแกรมเชิงวัตถุ

นำเข้า java.io.ByteArrayInputStream;import java.io.InputStream;import java.nio.charset.StandardCharsets;การสาธิตคลาสสาธารณะ { static void check_bytes (สตริง input_string) { ลอง { InputStream input_stream =ใหม่ ByteArrayInputStream (input_string.getBytes ( StandardCharsets.UTF_8)); System.out.println("จำนวนไบต์ที่มีอยู่ที่จุดเริ่มต้น:" + input_stream.available()); input_stream.read(); input_stream.read(); System.out.println("จำนวนไบต์ที่ต่อท้าย:" + input_stream.available()); input_stream.close(); } catch (ข้อยกเว้น e) { e.getStackTrace(); } } โมฆะคงที่สาธารณะ main (String args []) { String input_string ="โปรแกรม Java"; System.out.println("สตริงถูกกำหนดเป็น:" + input_string); check_bytes(อินพุต_สตริง); }}

ผลลัพธ์

สตริงถูกกำหนดเป็น:Java Programจำนวนไบต์ที่พร้อมใช้งานที่จุดเริ่มต้น:12จำนวนไบต์ที่สิ้นสุด:10