SlideShare a Scribd company logo
Module 06 – Java File IO
Danairat T.
Line ID: Danairat
FB: Danairat Thanabodithammachari
+668-1559-1446
Fundamental Java Programming
The Course Outline
Module 01 – Introduction to Java
Module 02 – Basic Java Programming
Module 03 – Control Flow and Exception Handling
Module 04 – Object Oriented in Java
Module 05 – Java Package and Access Control
Module 06 – Java File IO
Module 07 – Java Networking
Module 08 – Java Threading
Module 06 – Java File IO
• IO Stream
• Byte Stream
• Character Stream
• Listing Directory Objects (Directory and File)
• Creating Directory and File
• Deleting Directory and File
• Java Console Stream
I/O Streams
An I/O Stream represents an input source or an output destination. A
stream can represent many different kinds of sources and destinations,
including disk files, devices, other programs, and memory arrays.
Input Stream Output Stream
Byte Streams
The low level File IO process is using Byte Stremes; FileInputStream and FileOutputStream
package com.mycompany.fileio;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
public class CopyBytes {
public static void main(String[] args) throws IOException {
FileInputStream in = null;
FileOutputStream out = null;
try {
in = new FileInputStream("inputfile.txt");
out = new FileOutputStream("outagain.txt");
int c;
while ((c = in.read()) != -1) {
out.write(c); System.out.println(c);
}
} finally {
if (in != null) {
in.close();
}
if (out != null) {
out.close();
}
}
}
}
Character Stream with Line Reader
package com.mycompany.fileio;
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;
import java.util.StringTokenizer;
public class CopyLinesBuffered {
public static void main(String[] args) throws IOException {
BufferedReader inputStream = null;
BufferedWriter outputStream = null;
try {
inputStream =
new BufferedReader(new FileReader("inputfile.txt"));
outputStream =
new BufferedWriter(new FileWriter("lineoutput.txt"));
String l;
while ((l = inputStream.readLine()) != null) {
outputStream.write(l);
System.out.println("line data->"+l);
StringTokenizer st = new StringTokenizer(l," ");
while (st.hasMoreTokens()) {
System.out.println(st.nextToken()+"|");
}
}
} finally {
if (inputStream != null) {
inputStream.close();
}
if (outputStream != null) {
outputStream.close();
}
}
}
}
Listing Directory Objects
import java.io.File;
public class ListDirectoryObjects {
public static void main(String[] a) {
File myFile = new File("C:" + File.separator);
// reture String
for (String s : myFile.list()) {
System.out.println(s);
}
// return File obj for next iterative
for(File s: myFile.listFiles()){
System.out.println(s);
}
}
}
Creating Directory and File
import java.io.File;
public class FileDemo {
public static void main(String[] a)throws Exception {
File file = new File("d:JavaDemoJavaDemoSub");
file.mkdirs();
file = new File("d:JavaDemoJavaDemoSubtest.txt");
file.createNewFile();
}
}
Deleting Directory and File
import java.io.File;
public class DeleteFile_Dir_Demo {
public static void main(String args[]) {
File f = new File("D:" + File.separator + "temp4" + File.separator + "a.txt");
if (f.exists()) {
f.delete();
}
}
}
Delete File Recurrsively
import java.io.File;
public class DeleteDirectoryTree {
public static void main(String args[]) {
deleteDirectory(new File("v:delete_tempdelete_demo"));
}
static public boolean deleteDirectory(File path) {
if( path.exists() ) {
File[] files = path.listFiles();
for(int i=0; i<files.length; i++) {
if(files[i].isDirectory()) {
deleteDirectory(files[i]);
}
else {
files[i].delete();
}
}
}
return( path.delete() );
}
}
Java Console
Start from Java SE6, It is a predefined object of type Console that has most of
the features provided by the Standard Console Streams.
import java.io.Console;
import java.util.Arrays;
import java.io.IOException;
public class ConsolePassword {
public static void main (String args[]) throws IOException {
Console c = System.console();
if (c == null) {
System.err.println("No console.");
System.exit(1);
}
String login = c.readLine("Enter your login: ");
char [] oldPassword = c.readPassword("Enter your old
password: ");
if (verify(login, oldPassword)) {
boolean noMatch;
do {
char [] newPassword1 =
c.readPassword("Enter your new password: ");
char [] newPassword2 =
c.readPassword("Enter new password again: ");
noMatch = ! Arrays.equals(newPassword1,
newPassword2);
if (noMatch) {
c.format("Passwords don't match. Try
again.");
} else {
change(login, newPassword1);
c.format("Password changed.", login);
}
Arrays.fill(newPassword1, ' '); // clear data
Arrays.fill(newPassword2, ' '); // clear data
} while (noMatch);
}
Arrays.fill(oldPassword, ' '); // clear data
}
//Dummy verify method.
static boolean verify(String login, char[] password) {
return true;
}
//Dummy change method.
static void change(String login, char[] password) {}
}
Java Console – Deploy and Test
1.) Select “New ” from project menu 2.) Select “Deployment Profiles” -> “JAR File”
Java Console – Deploy and Test
3.) Enter Application Name
“console_password_app”
4.) Click “Browse” to select the start class file
Java Console – Deploy and Test
5.) Select the starting class “ConsolePassword” 6.) Click “Filters”
Java Console – Deploy and Test
7.) Check only the required class.
“ConsolePassword.java”
8.) Click “OK”
Java Console – Deploy and Test
9.) Click “Deploy” and select “console_password_app” 10.) Click “Next”
Java Console – Deploy and Test
11.) Click “Finish” 12.) Execute application from command line mode.
java –jar console_password_app.jar
Danairat T.
Line ID: Danairat
FB: Danairat Thanabodithammachari
+668-1559-1446
Thank you

More Related Content

PPT
Chapter 12 - File Input and Output
Eduardo Bergavera
 
PPT
Java Input Output and File Handling
Sunil OS
 
PPT
File Input & Output
PRN USM
 
PPTX
Java file
sonnetdp
 
PPT
Java căn bản - Chapter12
Vince Vo
 
PPT
Java File I/O
Canterbury HS
 
PDF
Java - File Input Output Concepts
Victer Paul
 
PPTX
Java 7 & 8 New Features
Leandro Coutinho
 
Chapter 12 - File Input and Output
Eduardo Bergavera
 
Java Input Output and File Handling
Sunil OS
 
File Input & Output
PRN USM
 
Java file
sonnetdp
 
Java căn bản - Chapter12
Vince Vo
 
Java File I/O
Canterbury HS
 
Java - File Input Output Concepts
Victer Paul
 
Java 7 & 8 New Features
Leandro Coutinho
 

What's hot (20)

PDF
Java Programming - 04 object oriented in java
Danairat Thanabodithammachari
 
PDF
Java Programming - 03 java control flow
Danairat Thanabodithammachari
 
PDF
Java Serialization Deep Dive
Martijn Dashorst
 
DOCX
srgoc
Gaurav Singh
 
PPTX
Java and XML Schema
Raji Ghawi
 
PDF
Java Concurrency by Example
Ganesh Samarthyam
 
PPTX
Java nio ( new io )
Jemin Patel
 
PPT
Serialization/deserialization
Young Alista
 
PPTX
Files io
Narayana Swamy
 
PDF
C++ Advanced Features
Michael Redlich
 
PDF
C++ Advanced Features
Michael Redlich
 
PDF
Java7 New Features and Code Examples
Naresh Chintalcheru
 
PPTX
Session 23 - JDBC
PawanMM
 
ODP
Java Concurrency
Carol McDonald
 
PPTX
Session 22 - Java IO, Serialization
PawanMM
 
PPTX
NIO and NIO2
Balamurugan Soundararajan
 
PDF
Important java programs(collection+file)
Alok Kumar
 
PPTX
More topics on Java
Ahmed Misbah
 
PPTX
Java
박 경민
 
PPTX
Web scraping using scrapy - zekeLabs
zekeLabs Technologies
 
Java Programming - 04 object oriented in java
Danairat Thanabodithammachari
 
Java Programming - 03 java control flow
Danairat Thanabodithammachari
 
Java Serialization Deep Dive
Martijn Dashorst
 
Java and XML Schema
Raji Ghawi
 
Java Concurrency by Example
Ganesh Samarthyam
 
Java nio ( new io )
Jemin Patel
 
Serialization/deserialization
Young Alista
 
Files io
Narayana Swamy
 
C++ Advanced Features
Michael Redlich
 
C++ Advanced Features
Michael Redlich
 
Java7 New Features and Code Examples
Naresh Chintalcheru
 
Session 23 - JDBC
PawanMM
 
Java Concurrency
Carol McDonald
 
Session 22 - Java IO, Serialization
PawanMM
 
Important java programs(collection+file)
Alok Kumar
 
More topics on Java
Ahmed Misbah
 
Web scraping using scrapy - zekeLabs
zekeLabs Technologies
 
Ad

Similar to Java Programming - 06 java file io (20)

PPTX
Understanding java streams
Shahjahan Samoon
 
PDF
import java.io.BufferedReader;import java.io.File;import java.io.pdf
manojmozy
 
PDF
Sam wd programs
Soumya Behera
 
PDF
Lab4
siragezeynu
 
PDF
Here is my code for a linefile editor import java.io.BufferedRea.pdf
pratyushraj61
 
PDF
IO Streams, Serialization, de-serialization, autoboxing
Gurpreet singh
 
PDF
5java Io
Adil Jafri
 
PDF
Below is my code for a line editor import java.io.BufferedReader;.pdf
alankarshoe84
 
PDF
Java Week4(C) Notepad
Chaitanya Rajkumar Limmala
 
PDF
Please help me with a UML class diagram for the following code im.pdf
aioils
 
DOC
Inheritance
آصف الصيفي
 
PPTX
Java Language fundamental
Infoviaan Technologies
 
ODT
Java practical
william otto
 
KEY
Why Learn Python?
Christine Cheung
 
DOCX
Code red SUM
Shumail Haider
 
DOCX
Bhaloo
Shumail Haider
 
PPTX
A topology of memory leaks on the JVM
Rafael Winterhalter
 
PDF
Sailing with Java 8 Streams
Ganesh Samarthyam
 
PDF
Internet Technology (Practical Questions Paper) [CBSGS - 75:25 Pattern] {Mast...
Mumbai B.Sc.IT Study
 
PPT
Java IO Streams V4
Sunil OS
 
Understanding java streams
Shahjahan Samoon
 
import java.io.BufferedReader;import java.io.File;import java.io.pdf
manojmozy
 
Sam wd programs
Soumya Behera
 
Here is my code for a linefile editor import java.io.BufferedRea.pdf
pratyushraj61
 
IO Streams, Serialization, de-serialization, autoboxing
Gurpreet singh
 
5java Io
Adil Jafri
 
Below is my code for a line editor import java.io.BufferedReader;.pdf
alankarshoe84
 
Java Week4(C) Notepad
Chaitanya Rajkumar Limmala
 
Please help me with a UML class diagram for the following code im.pdf
aioils
 
Inheritance
آصف الصيفي
 
Java Language fundamental
Infoviaan Technologies
 
Java practical
william otto
 
Why Learn Python?
Christine Cheung
 
Code red SUM
Shumail Haider
 
A topology of memory leaks on the JVM
Rafael Winterhalter
 
Sailing with Java 8 Streams
Ganesh Samarthyam
 
Internet Technology (Practical Questions Paper) [CBSGS - 75:25 Pattern] {Mast...
Mumbai B.Sc.IT Study
 
Java IO Streams V4
Sunil OS
 
Ad

More from Danairat Thanabodithammachari (20)

PDF
Thailand State Enterprise - Business Architecture and SE-AM
Danairat Thanabodithammachari
 
PDF
Agile Management
Danairat Thanabodithammachari
 
PDF
Agile Organization and Enterprise Architecture v1129 Danairat
Danairat Thanabodithammachari
 
PDF
Blockchain for Management
Danairat Thanabodithammachari
 
PDF
Enterprise Architecture and Agile Organization Management v1076 Danairat
Danairat Thanabodithammachari
 
PDF
Agile Enterprise Architecture - Danairat
Danairat Thanabodithammachari
 
PDF
Digital Transformation, Enterprise Architecture, Big Data by Danairat
Danairat Thanabodithammachari
 
PDF
Big data Hadoop Analytic and Data warehouse comparison guide
Danairat Thanabodithammachari
 
PDF
Big data hadooop analytic and data warehouse comparison guide
Danairat Thanabodithammachari
 
PDF
Perl for System Automation - 01 Advanced File Processing
Danairat Thanabodithammachari
 
PDF
Perl Programming - 04 Programming Database
Danairat Thanabodithammachari
 
PDF
Perl Programming - 03 Programming File
Danairat Thanabodithammachari
 
PDF
Perl Programming - 02 Regular Expression
Danairat Thanabodithammachari
 
PDF
Perl Programming - 01 Basic Perl
Danairat Thanabodithammachari
 
PDF
Setting up Hadoop YARN Clustering
Danairat Thanabodithammachari
 
PDF
JEE Programming - 03 Model View Controller
Danairat Thanabodithammachari
 
PDF
JEE Programming - 05 JSP
Danairat Thanabodithammachari
 
PDF
JEE Programming - 04 Java Servlets
Danairat Thanabodithammachari
 
PDF
JEE Programming - 08 Enterprise Application Deployment
Danairat Thanabodithammachari
 
PDF
JEE Programming - 07 EJB Programming
Danairat Thanabodithammachari
 
Thailand State Enterprise - Business Architecture and SE-AM
Danairat Thanabodithammachari
 
Agile Organization and Enterprise Architecture v1129 Danairat
Danairat Thanabodithammachari
 
Blockchain for Management
Danairat Thanabodithammachari
 
Enterprise Architecture and Agile Organization Management v1076 Danairat
Danairat Thanabodithammachari
 
Agile Enterprise Architecture - Danairat
Danairat Thanabodithammachari
 
Digital Transformation, Enterprise Architecture, Big Data by Danairat
Danairat Thanabodithammachari
 
Big data Hadoop Analytic and Data warehouse comparison guide
Danairat Thanabodithammachari
 
Big data hadooop analytic and data warehouse comparison guide
Danairat Thanabodithammachari
 
Perl for System Automation - 01 Advanced File Processing
Danairat Thanabodithammachari
 
Perl Programming - 04 Programming Database
Danairat Thanabodithammachari
 
Perl Programming - 03 Programming File
Danairat Thanabodithammachari
 
Perl Programming - 02 Regular Expression
Danairat Thanabodithammachari
 
Perl Programming - 01 Basic Perl
Danairat Thanabodithammachari
 
Setting up Hadoop YARN Clustering
Danairat Thanabodithammachari
 
JEE Programming - 03 Model View Controller
Danairat Thanabodithammachari
 
JEE Programming - 05 JSP
Danairat Thanabodithammachari
 
JEE Programming - 04 Java Servlets
Danairat Thanabodithammachari
 
JEE Programming - 08 Enterprise Application Deployment
Danairat Thanabodithammachari
 
JEE Programming - 07 EJB Programming
Danairat Thanabodithammachari
 

Recently uploaded (20)

PPTX
Presentation about variables and constant.pptx
safalsingh810
 
PDF
PFAS Reporting Requirements 2026 Are You Submission Ready Certivo.pdf
Certivo Inc
 
PDF
Protecting the Digital World Cyber Securit
dnthakkar16
 
PDF
lesson-2-rules-of-netiquette.pdf.bshhsjdj
jasmenrojas249
 
PPTX
PFAS Reporting Requirements 2026 Are You Submission Ready Certivo.pptx
Certivo Inc
 
PDF
Build Multi-agent using Agent Development Kit
FadyIbrahim23
 
PDF
Solar Panel Installation Guide – Step By Step Process 2025.pdf
CRMLeaf
 
PPTX
Services offered by Dynamic Solutions in Pakistan
DaniyaalAdeemShibli1
 
PDF
Wondershare Filmora 14.5.20.12999 Crack Full New Version 2025
gsgssg2211
 
PPTX
Visualising Data with Scatterplots in IBM SPSS Statistics.pptx
Version 1 Analytics
 
PPTX
TestNG for Java Testing and Automation testing
ssuser0213cb
 
PDF
Key Features to Look for in Arizona App Development Services
Net-Craft.com
 
PPTX
ASSIGNMENT_1[1][1][1][1][1] (1) variables.pptx
kr2589474
 
PDF
Why Use Open Source Reporting Tools for Business Intelligence.pdf
Varsha Nayak
 
PPTX
ConcordeApp: Engineering Global Impact & Unlocking Billions in Event ROI with AI
chastechaste14
 
PDF
IEEE-CS Tech Predictions, SWEBOK and Quantum Software: Towards Q-SWEBOK
Hironori Washizaki
 
DOCX
The Future of Smart Factories Why Embedded Analytics Leads the Way
Varsha Nayak
 
PDF
Appium Automation Testing Tutorial PDF: Learn Mobile Testing in 7 Days
jamescantor38
 
PPTX
Web Testing.pptx528278vshbuqffqhhqiwnwuq
studylike474
 
PDF
Bandai Playdia The Book - David Glotz
BluePanther6
 
Presentation about variables and constant.pptx
safalsingh810
 
PFAS Reporting Requirements 2026 Are You Submission Ready Certivo.pdf
Certivo Inc
 
Protecting the Digital World Cyber Securit
dnthakkar16
 
lesson-2-rules-of-netiquette.pdf.bshhsjdj
jasmenrojas249
 
PFAS Reporting Requirements 2026 Are You Submission Ready Certivo.pptx
Certivo Inc
 
Build Multi-agent using Agent Development Kit
FadyIbrahim23
 
Solar Panel Installation Guide – Step By Step Process 2025.pdf
CRMLeaf
 
Services offered by Dynamic Solutions in Pakistan
DaniyaalAdeemShibli1
 
Wondershare Filmora 14.5.20.12999 Crack Full New Version 2025
gsgssg2211
 
Visualising Data with Scatterplots in IBM SPSS Statistics.pptx
Version 1 Analytics
 
TestNG for Java Testing and Automation testing
ssuser0213cb
 
Key Features to Look for in Arizona App Development Services
Net-Craft.com
 
ASSIGNMENT_1[1][1][1][1][1] (1) variables.pptx
kr2589474
 
Why Use Open Source Reporting Tools for Business Intelligence.pdf
Varsha Nayak
 
ConcordeApp: Engineering Global Impact & Unlocking Billions in Event ROI with AI
chastechaste14
 
IEEE-CS Tech Predictions, SWEBOK and Quantum Software: Towards Q-SWEBOK
Hironori Washizaki
 
The Future of Smart Factories Why Embedded Analytics Leads the Way
Varsha Nayak
 
Appium Automation Testing Tutorial PDF: Learn Mobile Testing in 7 Days
jamescantor38
 
Web Testing.pptx528278vshbuqffqhhqiwnwuq
studylike474
 
Bandai Playdia The Book - David Glotz
BluePanther6
 

Java Programming - 06 java file io

  • 1. Module 06 – Java File IO Danairat T. Line ID: Danairat FB: Danairat Thanabodithammachari +668-1559-1446
  • 2. Fundamental Java Programming The Course Outline Module 01 – Introduction to Java Module 02 – Basic Java Programming Module 03 – Control Flow and Exception Handling Module 04 – Object Oriented in Java Module 05 – Java Package and Access Control Module 06 – Java File IO Module 07 – Java Networking Module 08 – Java Threading
  • 3. Module 06 – Java File IO • IO Stream • Byte Stream • Character Stream • Listing Directory Objects (Directory and File) • Creating Directory and File • Deleting Directory and File • Java Console Stream
  • 4. I/O Streams An I/O Stream represents an input source or an output destination. A stream can represent many different kinds of sources and destinations, including disk files, devices, other programs, and memory arrays. Input Stream Output Stream
  • 5. Byte Streams The low level File IO process is using Byte Stremes; FileInputStream and FileOutputStream package com.mycompany.fileio; import java.io.FileInputStream; import java.io.FileOutputStream; import java.io.IOException; public class CopyBytes { public static void main(String[] args) throws IOException { FileInputStream in = null; FileOutputStream out = null; try { in = new FileInputStream("inputfile.txt"); out = new FileOutputStream("outagain.txt"); int c; while ((c = in.read()) != -1) { out.write(c); System.out.println(c); } } finally { if (in != null) { in.close(); } if (out != null) { out.close(); } } } }
  • 6. Character Stream with Line Reader package com.mycompany.fileio; import java.io.BufferedReader; import java.io.BufferedWriter; import java.io.FileReader; import java.io.FileWriter; import java.io.IOException; import java.util.StringTokenizer; public class CopyLinesBuffered { public static void main(String[] args) throws IOException { BufferedReader inputStream = null; BufferedWriter outputStream = null; try { inputStream = new BufferedReader(new FileReader("inputfile.txt")); outputStream = new BufferedWriter(new FileWriter("lineoutput.txt")); String l; while ((l = inputStream.readLine()) != null) { outputStream.write(l); System.out.println("line data->"+l); StringTokenizer st = new StringTokenizer(l," "); while (st.hasMoreTokens()) { System.out.println(st.nextToken()+"|"); } } } finally { if (inputStream != null) { inputStream.close(); } if (outputStream != null) { outputStream.close(); } } } }
  • 7. Listing Directory Objects import java.io.File; public class ListDirectoryObjects { public static void main(String[] a) { File myFile = new File("C:" + File.separator); // reture String for (String s : myFile.list()) { System.out.println(s); } // return File obj for next iterative for(File s: myFile.listFiles()){ System.out.println(s); } } }
  • 8. Creating Directory and File import java.io.File; public class FileDemo { public static void main(String[] a)throws Exception { File file = new File("d:JavaDemoJavaDemoSub"); file.mkdirs(); file = new File("d:JavaDemoJavaDemoSubtest.txt"); file.createNewFile(); } }
  • 9. Deleting Directory and File import java.io.File; public class DeleteFile_Dir_Demo { public static void main(String args[]) { File f = new File("D:" + File.separator + "temp4" + File.separator + "a.txt"); if (f.exists()) { f.delete(); } } }
  • 10. Delete File Recurrsively import java.io.File; public class DeleteDirectoryTree { public static void main(String args[]) { deleteDirectory(new File("v:delete_tempdelete_demo")); } static public boolean deleteDirectory(File path) { if( path.exists() ) { File[] files = path.listFiles(); for(int i=0; i<files.length; i++) { if(files[i].isDirectory()) { deleteDirectory(files[i]); } else { files[i].delete(); } } } return( path.delete() ); } }
  • 11. Java Console Start from Java SE6, It is a predefined object of type Console that has most of the features provided by the Standard Console Streams. import java.io.Console; import java.util.Arrays; import java.io.IOException; public class ConsolePassword { public static void main (String args[]) throws IOException { Console c = System.console(); if (c == null) { System.err.println("No console."); System.exit(1); } String login = c.readLine("Enter your login: "); char [] oldPassword = c.readPassword("Enter your old password: "); if (verify(login, oldPassword)) { boolean noMatch; do { char [] newPassword1 = c.readPassword("Enter your new password: "); char [] newPassword2 = c.readPassword("Enter new password again: "); noMatch = ! Arrays.equals(newPassword1, newPassword2); if (noMatch) { c.format("Passwords don't match. Try again."); } else { change(login, newPassword1); c.format("Password changed.", login); } Arrays.fill(newPassword1, ' '); // clear data Arrays.fill(newPassword2, ' '); // clear data } while (noMatch); } Arrays.fill(oldPassword, ' '); // clear data } //Dummy verify method. static boolean verify(String login, char[] password) { return true; } //Dummy change method. static void change(String login, char[] password) {} }
  • 12. Java Console – Deploy and Test 1.) Select “New ” from project menu 2.) Select “Deployment Profiles” -> “JAR File”
  • 13. Java Console – Deploy and Test 3.) Enter Application Name “console_password_app” 4.) Click “Browse” to select the start class file
  • 14. Java Console – Deploy and Test 5.) Select the starting class “ConsolePassword” 6.) Click “Filters”
  • 15. Java Console – Deploy and Test 7.) Check only the required class. “ConsolePassword.java” 8.) Click “OK”
  • 16. Java Console – Deploy and Test 9.) Click “Deploy” and select “console_password_app” 10.) Click “Next”
  • 17. Java Console – Deploy and Test 11.) Click “Finish” 12.) Execute application from command line mode. java –jar console_password_app.jar
  • 18. Danairat T. Line ID: Danairat FB: Danairat Thanabodithammachari +668-1559-1446 Thank you