'Java > 입출력' 카테고리의 다른 글
직렬화 (0) | 2012.04.13 |
---|---|
File 생성 및 변경 (0) | 2012.04.13 |
FileEx4 (0) | 2012.04.13 |
디렉토리 정보 (0) | 2012.04.13 |
입출력으로 파일 상세정보 (0) | 2012.04.13 |
직렬화 (0) | 2012.04.13 |
---|---|
File 생성 및 변경 (0) | 2012.04.13 |
FileEx4 (0) | 2012.04.13 |
디렉토리 정보 (0) | 2012.04.13 |
입출력으로 파일 상세정보 (0) | 2012.04.13 |
package com.serial; import java.io.Serializable; //Serializable 인터페이스를 구현하는 것은 해당클래스가 직렬화 대상임을 명시하는 역할 public class Customer implements Serializable{ //멤버 변수 private String name; //생성자 public Customer(String name){ this.name=name; } public void setName(String name){ this.name=name; } public String getName(){ return name; } //Object to String()재정의 public String toString(){ return "당신의 이름: "+name; } public static void main(String[] args) { } }
package com.serial; import java.io.ObjectOutputStream; import java.io.FileOutputStream; import java.io.IOException; import java.io.ObjectInputStream; import java.io.FileInputStream; public class ObjectInOutputStreamEx { public static void main(String[] args) { ObjectOutputStream oos=null; FileOutputStream fos=null; ObjectInputStream ois=null; FileInputStream fis=null; try{ fos=new FileOutputStream("Object.ser"); //객체 직렬화 oos=new ObjectOutputStream(fos); oos.writeObject(new Customer("홍길동")); fis=new FileInputStream("object.ser"); ois=new ObjectInputStream(fis); Customer m=(Customer)ois.readObject(); System.out.println(m); }catch(IOException ioe){ ioe.printStackTrace(); }catch (ClassNotFoundException cnfe){ cnfe.printStackTrace(); }finally{ try{ if(oos!=null)oos.close(); if(fos!=null)fos.close(); if(ois!=null)ois.close(); if(fis!=null)fis.close(); }catch(IOException ioe){ ioe.printStackTrace(); } } } }
package com.serial; import java.io.Serializable; public class UserInfo implements Serializable{ String id; String password; int num; public UserInfo(String id, String password,int num){ this.id= id; this.password= password; this.num= num; } @Override public String toString(){ return "UserInfo {id="+id+", password ="+ password+", num="+num+"}"; } }
package com.serial; import java.util.ArrayList; import java.io.FileOutputStream; import java.io.ObjectOutputStream; import java.io.IOException; public class SerialEx1 { public static void main(String[] args) { try{ String fileName = "UserInfo.ser"; FileOutputStream fos = new FileOutputStream(fileName); ObjectOutputStream out = new ObjectOutputStream(fos); UserInfo u1 =new UserInfo("JavaMan","1234",30); UserInfo u2 =new UserInfo("JavaWoMan","4321",26); ArrayList list = new ArrayList(); list.add(u1); list.add(u2); //객체를 직렬화 한다. out.writeObject(u1); out.writeObject(u2); out.writeObject(list); out.close(); fos.close(); System.out.println("직렬화가 잘 끝났습니다."); }catch(IOException e){ e.printStackTrace(); } }//main }//class
package com.serial; import java.util.ArrayList; import java.io.ObjectInputStream; import java.io.FileInputStream; import java.io.IOException; public class SerialEx2 { public static void main(String[] args) { try{ String fileName = "UserInfo.ser"; FileInputStream fis = new FileInputStream(fileName); ObjectInputStream in = new ObjectInputStream(fis); //객체를 읽을때는 출력한 순서와 일치해야 한다. UserInfo u1 = (UserInfo)in.readObject(); UserInfo u2 = (UserInfo)in.readObject(); ArrayList list = (ArrayList)in.readObject(); System.out.println(u1); System.out.println(u2); System.out.println(list); in.close(); fis.close(); }catch(Exception e){ e.printStackTrace(); } }//main }//class
예비 (0) | 2012.04.13 |
---|---|
File 생성 및 변경 (0) | 2012.04.13 |
FileEx4 (0) | 2012.04.13 |
디렉토리 정보 (0) | 2012.04.13 |
입출력으로 파일 상세정보 (0) | 2012.04.13 |
package com.file; import java.io.File; import java.io.IOException; public class FileTest02 { public static void main(String[] args) throws IOException{ System.out.println("===파일 생성==="); //시스템에서 사용하는 디렉토리 구분자를 반환 //System.getProperty("file.separator") = File.separator File f3 = new File("c:"+File.separator+"test.txt"); //없으면 만들면서 true 리턴 있으면 false 리턴 System.out.println(f3.createNewFile()); System.out.println(f3.getPath()); System.out.println(f3.getName()); System.out.println(f3.getParent()); System.out.println("===파일명 변경==="); File f4 = new File("c:"+File.separator+"test1.txt"); System.out.println(f3.renameTo(f4)); //없는 디렉토리일 경우 만들고 true 리턴 System.out.println("===디렉토리 생성==="); //디렉토리 생성 File f5 = new File("c:"+File.separator+"year"); System.out.println(f5.mkdir()); } }
package com.file;// import java.io.*; import java.text.SimpleDateFormat; import java.util.Date; public class FileEx4 { public static void main(String[] args) { String currDir = System.getProperty("user.dir"); File dir = new File(currDir); File[] files = dir.listFiles(); for(int i=0; i<files.length;i++){ File f= files[i]; String name = f.getName();//디렉토리명 또는 파일명 SimpleDateFormat df =new SimpleDateFormat("yyyy-MM-DD HH:mma"); String attribute = ""; String size=""; if(files[i].isDirectory()){ attribute = "DIR"; }else{ size = f.length()+""; //형변환 long -> String attribute = f.canRead() ? "R" : " "; attribute = f.canWrite() ? "W" : " "; attribute = f.isHidden() ? "H" : " "; } System.out.printf("%s %3s %6s %s\n",df.format (new Date(f.lastModified())),attribute,size,name); } } }
직렬화 (0) | 2012.04.13 |
---|---|
File 생성 및 변경 (0) | 2012.04.13 |
디렉토리 정보 (0) | 2012.04.13 |
입출력으로 파일 상세정보 (0) | 2012.04.13 |
키보드에서 입력받은 내용을 파일에 기록하기 (0) | 2012.04.13 |
package com.file; import java.io.File; public class FileEx2 { public static void main(String[] args) { String file = "C:\\"; File f = new File(file); if(!f.exists() || !f.isDirectory()){ System.out.println("유효하지 않은 디렉토리 입니다."); System.exit(0); } //전달되는 디렉토리의 서브디렉토리와 파일 정보를 //File[]로 반환 File[] files = f.listFiles(); for(int i=0; i<files.length; i++){ String fileName = files[i].getName(); System.out.println(files[i].isDirectory() ? "["+fileName+"]" :fileName+"("+files[i].length()+"byte)"); } } }
File 생성 및 변경 (0) | 2012.04.13 |
---|---|
FileEx4 (0) | 2012.04.13 |
입출력으로 파일 상세정보 (0) | 2012.04.13 |
키보드에서 입력받은 내용을 파일에 기록하기 (0) | 2012.04.13 |
Buffered Writer (0) | 2012.04.13 |
package com.file; import java.io.File; import java.util.Date; public class FileTest01{ public static void main(String[] args) throws Exception{ File file = null; byte[] byteFileName = new byte[100]; String fileName; System.out.print("파일명 -> "); System.in.read(byteFileName); fileName = new String(byteFileName).trim(); file = new File(fileName); System.out.println("파일 상세 정보*****"); System.out.println("절대 경로 : "+file.getAbsolutePath()); System.out.println("표준 경로 : "+file.getCanonicalPath()); System.out.println("생성일 : "+new Date(file.lastModified())); System.out.println("파일 크기 : "+file.length()); System.out.println("읽기 속성 : "+file.canRead()); System.out.println("쓰기 속성 : "+file.canWrite()); System.out.println("파일 경로 : "+file.getParent()); System.out.println("숨김 속성 : "+file.isHidden()); } }
FileEx4 (0) | 2012.04.13 |
---|---|
디렉토리 정보 (0) | 2012.04.13 |
키보드에서 입력받은 내용을 파일에 기록하기 (0) | 2012.04.13 |
Buffered Writer (0) | 2012.04.13 |
Buffer Writer (0) | 2012.04.13 |
package com.writer;//키보드에서 입력받은 내용을 파일에 기록하기 import java.io.BufferedReader; import java.io.BufferedWriter; import java.io.InputStreamReader; import java.io.FileWriter; import java.io.IOException; import java.io.Reader; public class ReaderWriterTest03 { public static void main(String[] args) { String fileName; String buf; Reader myIn = new InputStreamReader(System.in); BufferedReader keyBr = new BufferedReader(myIn); try{ System.out.print("파일 이름을 입력하세요 ->"); fileName = keyBr.readLine(); FileWriter fw = new FileWriter(fileName); BufferedWriter fileBw =new BufferedWriter(fw); System.out.println("파일에 저장할 내용을 입력하세요"); while((buf = keyBr.readLine()) != null){ fileBw.write(buf); fileBw.newLine(); } fileBw.close(); keyBr.close(); myIn.close(); }catch(IOException e){ System.out.print(e); } } }
디렉토리 정보 (0) | 2012.04.13 |
---|---|
입출력으로 파일 상세정보 (0) | 2012.04.13 |
Buffered Writer (0) | 2012.04.13 |
Buffer Writer (0) | 2012.04.13 |
File Reader (0) | 2012.04.13 |
package com.writer;//bufferd writer import java.io.FileWriter; import java.io.BufferedWriter; import java.io.IOException; public class BufferedWriterEx { public static void main(String[] args) { FileWriter fw = null; BufferedWriter bw = null; try{ fw = new FileWriter("bufferWriter.txt"); bw = new BufferedWriter(fw); bw.write("BufferedWriter 테스트 입니다"); bw.newLine();//줄바꿈 bw.write("안녕하세요"+ //시스템에서 사용하는 개행 문자를 읽옴 System.getProperty("Line.separator")+"카카하하하"); //bw.flush();//close()메소드가 플러시를 대신함 생략가능 }catch(IOException ioe){ ioe.printStackTrace(); }finally{ try{ if(bw != null)bw.close(); if(fw != null)bw.close(); }catch(IOException ioe){ ioe.printStackTrace(); } } } }
입출력으로 파일 상세정보 (0) | 2012.04.13 |
---|---|
키보드에서 입력받은 내용을 파일에 기록하기 (0) | 2012.04.13 |
Buffer Writer (0) | 2012.04.13 |
File Reader (0) | 2012.04.13 |
한줄 단위로 문자열 입력받아 처리하기 (0) | 2012.04.13 |
package com.writer; //bufferd writer 사용 import java.io.FileWriter; import java.io.IOException; public class FileWriterEx { public static void main(String[] args) { FileWriter fw = null; try{ //fw = new FileWriter("fileWriter.txt"); fw = new FileWriter("fileWrtier.txt",true); String message = "안녕하세요 FileWriter 테스트"; fw.write(message); }catch (IOException ioe){ ioe.printStackTrace(); }finally{ try{ if(fw != null)fw.close(); }catch(IOException ioe){ ioe.printStackTrace(); } } } }
키보드에서 입력받은 내용을 파일에 기록하기 (0) | 2012.04.13 |
---|---|
Buffered Writer (0) | 2012.04.13 |
File Reader (0) | 2012.04.13 |
한줄 단위로 문자열 입력받아 처리하기 (0) | 2012.04.13 |
Buffer사용 (0) | 2012.04.13 |
package com.reader;//FileReader import java.io.FileReader; import java.io.IOException; public class FileReaderEx { public static void main(String[] args) { FileReader fr= null; //넉넉잡아 공간형성 (FileReader에는 정확한 값을 인지하는 메소드가 없다) char date[] = new char[100]; try{ fr = new FileReader("file.txt"); int readChar; //입력한 문자 하나를 읽어 들어서 유니코드로 반환 while((readChar = fr.read()) != -1){ System.out.print((char)readChar); } /*fr.read(date); System.out.println(new String(date).trim());*/ }catch(IOException ieo){ ieo.printStackTrace(); }finally{ try{ if(fr != null) fr.close(); }catch(IOException ioe){ ioe.printStackTrace(); } } } }
Buffered Writer (0) | 2012.04.13 |
---|---|
Buffer Writer (0) | 2012.04.13 |
한줄 단위로 문자열 입력받아 처리하기 (0) | 2012.04.13 |
Buffer사용 (0) | 2012.04.13 |
입출력 파일 생성및 파일 읽기 (0) | 2012.04.13 |
package com.reader;//한줄 단위로 문자열 입력받아 처리하기 import java.io.BufferedReader; import java.io.InputStreamReader; import java.io.IOException; public class ReaderWriterTest01 { public static void main(String[] args){ String fileName; //inputStreamReader 객체생성 inputstream을 inpuStreamReader로 바꿈 //바이트 스트림 -> 문자 스트림 //InputStreamReader myIn = new InputStreamReader(System.in); //BufferedReader keyBr = new BufferedReader(myIn); BufferedReader keyBr = new BufferedReader(new InputStreamReader(System.in)); try{ System.out.print("파일 이름을 입력하세요 -> "); fileName = keyBr.readLine(); System.out.println(fileName); //keyBr.close(); //myIn.close(); }catch(IOException e){ System.out.print(e); }finally{ if(keyBr != null);{ try{ //스트림을 닫음 keyBr.close(); }catch(IOException e){ e.printStackTrace(); } } /*if(myIn != null){ try{ myIn.close(); }catch(IOException e){ e.printStackTrace(); } }*/ } } }
Buffer Writer (0) | 2012.04.13 |
---|---|
File Reader (0) | 2012.04.13 |
Buffer사용 (0) | 2012.04.13 |
입출력 파일 생성및 파일 읽기 (0) | 2012.04.13 |
IO Stream 키보드로 부터 한글자를 입력받아 화면에 출력 (0) | 2012.04.13 |
package com.output;//Buffer 사용 입력 //버퍼 사용 장점 빠른 속도와 안전성 import java.io.BufferedOutputStream; import java.io.FileOutputStream; import java.io.IOException; public class BufferedOutputStreamEx { public static void main(String[] args) { FileOutputStream fos = null; BufferedOutputStream bos = null; try{ fos = new FileOutputStream("bufferOut.txt"); bos = new BufferedOutputStream(fos); String str = "BufferedOutputStream Test 입니다."; //버퍼에 데이터를 저장하고 //flush() 또는 close() 가 호출되면 데이터를 //버퍼에서 비우고 해당데이터를 파일에 저장 bos.write(str.getBytes()); //bos.flush(); //플러시 하지 않으면 출력된 내용이 저장되지 않음 }catch(IOException ie){ ie.printStackTrace(); }finally{ try{ //flush() 안해도 close()하면 내용 저장 if(bos != null)bos.close(); if(fos != null)fos.close(); }catch(IOException ioe){ ioe.printStackTrace(); } } } }
Buffer Writer (0) | 2012.04.13 |
---|---|
File Reader (0) | 2012.04.13 |
한줄 단위로 문자열 입력받아 처리하기 (0) | 2012.04.13 |
입출력 파일 생성및 파일 읽기 (0) | 2012.04.13 |
IO Stream 키보드로 부터 한글자를 입력받아 화면에 출력 (0) | 2012.04.13 |
package com.output; // 입출력으로 파일생성 및 파일 읽기 import java.io.IOException; import java.io.FileInputStream; import java.io.FileNotFoundException; import java.io.FileOutputStream; public class FileOuputstreamEx { public static void main(String[] args) { FileOutputStream fos = null; FileInputStream fin = null; try{ //파일 생성 fos = new FileOutputStream("c:\\fileout.txt"); //fos = new FileOutputStream("c:\\fileout.txt",true); //기존 파일이 있으면 이어쓰기함 String message = "Hello File!! 즐거운 하루!!"; //String -> byte[] //생성된 파일에 데이터 입력 fos.write(message.getBytes()); //존재하는 파일을 읽어드림 fin = new FileInputStream("c:\\fileout.txt"); byte[]b = new byte[fin.available()]; //파일로부터 데이를 읽어드림 fin.read(b); //byte ->String //문자열 출력 System.out.println(new String(b)); }catch(FileNotFoundException fnfe){ fnfe.printStackTrace(); }catch(IOException ie){ ie.printStackTrace(); }finally{ try{ //스트림을 닫음 if(fos != null) fos.close(); if(fin != null) fin.close(); }catch(IOException ioe){ ioe.printStackTrace(); } } } }
Buffer Writer (0) | 2012.04.13 |
---|---|
File Reader (0) | 2012.04.13 |
한줄 단위로 문자열 입력받아 처리하기 (0) | 2012.04.13 |
Buffer사용 (0) | 2012.04.13 |
IO Stream 키보드로 부터 한글자를 입력받아 화면에 출력 (0) | 2012.04.13 |
package com.input;//키보드로 부터 한글자를 입력받아 화면에 출력 //ioStream public class IOTest00 { public static void main(String[] args) throws Exception{ int date=0; System.out.println("문자를 입력하세요. 끝내려면 [Ctrl + Z]를 누르세요"); while((date= System.in.read()) != -1){ System.out.print((char)date); System.out.print("\t"+date+"\n"); }//while }//main }
package com.input; //특정 파일의 내용을 화면에 출력 import java.io.FileInputStream; import java.io.IOException; public class IOTest03 { public static void main(String[] args) { int date=0; //c:\\filetest.txt와 동일 \특수문자 -> 경로/를 사용할 경우는 일반문자로 인식 String path ="c:/filetest.txt"; try{ FileInputStream fis = new FileInputStream(path); while((date = fis.read())!= -1){ System.out.print((char)date); } }catch(IOException e){ e.printStackTrace(); } } }
package com.input; //특정 파일의 내용을 화면에 출력 import java.io.FileInputStream; import java.io.IOException; public class IOTest04 { public static void main(String[] args) { //c:\\filetest.txt와 동일 \특수문자 -> 경로/를 사용할 경우는 일반문자로 인식 String path ="c:/filetest.txt"; try{ FileInputStream fis = new FileInputStream(path); byte[] date =new byte[fis.available()]; fis.read(date); //byte[] -> String System.out.println(new String(date)); }catch(IOException e){ e.printStackTrace(); } } }
package com.input; //특정 파일의 내용을 화면에 출력 import java.io.FileInputStream; import java.io.IOException; public class IOTest05 { public static void main(String[] args) { int date=0; //c:\\filetest.txt와 동일 \특수문자 -> 경로/를 사용할 경우는 일반문자로 인식 String path ="c:/filetest.txt"; try{ FileInputStream fis = new FileInputStream(path); while((date = fis.read())!= -1){ //wirte = line by line으로 읽음 println이랑 다르게 마지막에 줄바꿈 해야됨 //줄바꿈이 되지 않았을경우 그 라인은 출력되지 않음 System.out.write(date); } }catch(IOException e){ e.printStackTrace(); } } }
Buffer Writer (0) | 2012.04.13 |
---|---|
File Reader (0) | 2012.04.13 |
한줄 단위로 문자열 입력받아 처리하기 (0) | 2012.04.13 |
Buffer사용 (0) | 2012.04.13 |
입출력 파일 생성및 파일 읽기 (0) | 2012.04.13 |