diff --git a/Dd.java b/Dd.java new file mode 100644 index 0000000..9db9a6a --- /dev/null +++ b/Dd.java @@ -0,0 +1,26 @@ +import java.io.BufferedReader; +import java.io.IOException; +import java.io.InputStreamReader; + +public class Dd { + public static void dd() { + try { + ProcessBuilder pb = new ProcessBuilder("sudo", "dd", "if=" + FilePathAdd.ImagePath, "of=" + StorageDeviceLister.fullPath, "bs=" + BlockSize.blockSizeString, "status=progress", "oflag=" + OflagHandler.oflagHandleString); + pb.redirectErrorStream(true); + Process process = pb.start(); + + BufferedReader reader = new BufferedReader( + new InputStreamReader(process.getInputStream()) + ); + + int character; + while ((character = reader.read()) != -1) { + char c = (char) character; + System.out.print(c); + System.out.flush(); + } + } catch (IOException e) { + e.printStackTrace(); + } + } +} diff --git a/Flasher.java b/Flasher.java index 997e549..3cca041 100644 --- a/Flasher.java +++ b/Flasher.java @@ -12,10 +12,12 @@ public class Flasher { System.out.println(" - To be used oflag: " + OflagHandler.oflagHandleString); input = UserInput.nextLine(); if (YesNo.check(input)) { - System.out.println("Flashing..."); + System.out.println("Starting to flash..."); } else { System.out.println("Canceling..."); System.exit(0); } + Dd.dd(); + System.out.println("Flash completed."); } }