BASIC IO
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 destination, including disk fiels, devices, other programs, and memory arrays.
Byte Streams
Programs use byte streams to perform input and output of 8-bit bytes. All byte stream are descended from InputStream and OutputStraem.
There are many byte stream classes. To demonstrate how byte streams work, we’ll focus on the file I/O byte streams, FileInputStream and FileOutputStream. Ohter kind of byte streams are used in much the same way.
public class CopyBytes {
public static void main(String[] args) {
FileInputStream in =null;
FileOutputStream out =null;
try {
in = new FileInputStream("xanadu.txt");
out = new FileOutputStream("outagain.txt");
int c;
while((c= in.read()) != -1){
out.write(c);
}
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}finally {
try {
in.close();
} catch (IOException e) {
e.printStackTrace();
}
try {
out.close()