From c651b85f54e1ca9fa5e225198673942c8613e753 Mon Sep 17 00:00:00 2001 From: anujgaud <146576725+anujgaud@users.noreply.github.com> Date: Sat, 3 Feb 2024 19:16:52 +0530 Subject: [PATCH] Add read methods --- .../com/baeldung/systemin/SystemInRead.java | 45 +++++++++++++++++++ 1 file changed, 45 insertions(+) create mode 100644 core-java-modules/core-java-console/src/main/java/com/baeldung/systemin/SystemInRead.java diff --git a/core-java-modules/core-java-console/src/main/java/com/baeldung/systemin/SystemInRead.java b/core-java-modules/core-java-console/src/main/java/com/baeldung/systemin/SystemInRead.java new file mode 100644 index 0000000000..e815cdae2f --- /dev/null +++ b/core-java-modules/core-java-console/src/main/java/com/baeldung/systemin/SystemInRead.java @@ -0,0 +1,45 @@ +package com.baeldung.systemin; + +import java.io.IOException; + +class SystemInRead { + static void readSingleCharacter() { + System.out.println("Enter a character:"); + try { + int input = System.in.read(); + System.out.println((char) input); + } + catch (IOException e) { + System.err.println("Error reading input: " + e.getMessage()); + } + } + static void readMultipleCharacters() { + System.out.println("Enter characters (Press 'Enter' to quit):"); + try { + int input; + while ((input = System.in.read()) != '\n') { + System.out.print((char) input); + } + } catch (IOException e) { + System.err.println("Error reading input: " + e.getMessage()); + } + } + + static void readWithParameters() { + try { + byte[] byteArray = new byte[5]; + int bytesRead; + int totalBytesRead = 0; + + while ((bytesRead = System.in.read(byteArray, 0, byteArray.length)) != -1) { + System.out.print("Data read: " + new String(byteArray, 0, bytesRead)); + totalBytesRead += bytesRead; + } + + System.out.println("\nBytes Read: " + totalBytesRead); + + } catch (IOException e) { + e.printStackTrace(); + } + } +}