티스토리 뷰

공부합시다/찍먹

21.03.12(금) 수업 내용

신규_유저 2021. 3. 12. 17:17
// 클래스를 이해하기 위한 클래스 정보에 있는 생성자의 파악예제프로그램
import java.io.*;

public class Exam01 {
	public static void main(String[] ar) throws IOException {
		String a = File.pathSeparator;
		char b = File.pathSeparatorChar;
		String c = File.separator;
		char d = File.separatorChar;

		System.out.println("a=" + a);
		System.out.println("b=" + b);
		System.out.println("c=" + c);
		System.out.println("d=" + d);
	}
}
//클래스 내의 생성자 사용법(매개변수 포함한)에 대한 예제 내용
import java.io.*;

public class Exam02 {
	public static void main(String[] ar) {
		File f = new File("Exam01.java");
		File f1 = new File("Exam03.java");
		File f2 = new File("C:\\Temp\\JAVA\\workspace\\java8\\Exam02");
		File dir = new File("C:\\Temp\\JAVA\\workspace\\java8");
		File f3 = new File("dir,Exam01.java");
	}
}
//클래스 파일의 메소드에 대한 사용예제 프로그램
import java.io.*;

public class Exam03 {
	public static void main(String[] ar) {
		File f = new File("Exam.01.java");
		System.out.println("canread?" + f.canRead()); // return값이 boolean이라 true/false로 나오게 됨.
		System.out.println("canRead?" + f.canWrite());

		File f1 = new File("aaa.txt");
		boolean a = f1.exists();
		System.out.println("a=" + a);
		try {
			boolean bool = f1.createNewFile(); // try catch문 없을 경우 오류 발생함.
			System.out.println("bool=" + bool); // 만들어 지면 true, 아니면 false가 나옴.
		} catch (IOException e) {
		}
		System.out.println("생성됨");

		System.out.println("f1.name=" + f1.getName());// f1의 txt file 이름 확인하기.

//		boolean bool = f1.delete();//f1의 txt file을 삭제
//		System.out.println("f1.bool="+bool); //f1의 txt file을 삭제했다면 true, 아니면 false가 나옴.
		f1.deleteOnExit(); // 몇 초 후에 파일을 지우라는 내용
		try {
			Thread.sleep(5000);
		} catch (InterruptedException e) {
		}
	}
}
import java.io.*;
public class Exam04 {
	public static void main(String[] ar) {
		File f = new File("aaa"); //aaa라는 파일을 디렉토리(폴더 만드는 거랑 비슷)를 만듦.
		f.mkdir();
		File ff = new File("bbb/ccc/ddd/eee"); // bbb폴더 안에 ccc폴어 안에 ddd폴더 안에 eee폴더가 생성됨.
		ff.mkdirs();
	}
}
import java.io.*/*모든 것을 가져오기*/;

public class Exam05 {
	public static void main(String[] ar) throws IOException {
// 범용적인 출력시키는 객체를 하나 만들어 봄.
		// 콘솔 창에 출력시키기 위함
		OutputStreamWriter osw = new OutputStreamWriter(System.out);
		BufferedWriter bw = new BufferedWriter(osw, 1024/* 2^10 = 1024 */);
		PrintWriter pw = new PrintWriter(bw);
// 어떤 객체 내용들이 화면에 출력될 수 있도록 하는 문장들임.
		
		//파일에 출력하는 위해서 파일을 하나 만듦.
		// 파일에 출력시키기 위함.
		File f = new File("ccc.txt"); // ←생성자 만들기
		FileWriter fw = new FileWriter(f); // 쓰기 위하여 FileWriter class를 사용함.
		BufferedWriter bw1/*입력하는 Buffer임*/ = new BufferedWriter(fw,1024/*크기 지정*/);
		PrintWriter pw1 = new PrintWriter(bw1);
		pw.println(10);
		pw.println("안녕하세요?");
		
		pw1.println(20); // 콘솔에 집어 넣는다 = txt file에 직접 입력한다.
		pw1.println("Good Morning~!!!");
		
		pw.close();// 각각 닫아줘야 함.
		pw1.close();
	}
}
//키보드에서 들어온 입력문자나 숫자와 파일을 읽어서 출력시키는 프로그램
import java.io.*;

public class Exam06 {
	public static void main(String[] ar) throws IOException {
		// 먼저 키보드로부터 입력받겠다는 내용임.
		InputStreamReader isr = new InputStreamReader(System.in);
		BufferedReader br = new BufferedReader(isr);
		// BufferedReader in = new BufferedReader(new InputSystem(System.in));
		// 결국 이것이 키보드로부터의 입력 코딩임.

		// 파일로부터의 입력은
		File f = new File("ccc.txt");
		FileReader fr = new FileReader(f);
		// 버퍼를 사용해야 함.
		BufferedReader br1 = new BufferedReader(fr);

		// 그 다움에는 키보드로부터 입력받은 내용들을 진행함.
		System.out.print("문자열=");
		String str = br.readLine(); // 키보드로 문자 입력
		System.out.println("str=" + str); // 키보드로 입력된 문자를 화면에 출력함

		System.out.print("숫자="); // 숫자인 경우에는 형변환(=파싱)이 필요함.
		int x = Integer.parseInt(br.readLine());
		System.out.println("x=" + x);

		System.out.println("#######################################");
		// 아래부터는 파일로부터 읽어오는 방법을 display 하는 내용임.
		while (true)/* true인 경우 무한으로 돌도록 함 */ {/* 무한으로 읽어들어오는 방식으로 작성 */
			String s = br1.readLine();
			if (s == null)
				break;
			System.out.println("s=" + s);
		}
		br.close();
		br1.close();

	}

}
//Scanner class 사용하는 예제
import java.io.*;
import java.util.*;

public class Exam07 {
	public static void main(String[] ar) throws IOException {
		//키보드로부터 입력받는 것을 만들기
		Scanner in = new Scanner(System.in);
		System.out.print("문자열=");
		String str = in.next(); //FIFO , LIFO;
		
		System.out.print("숫자=");
		int x = in.nextInt();
		
		System.out.print("더블숫자=");
		double y = in.nextDouble();
	}
}
//입력되는 숫자형 데이터를 받아서 총점과 갯수 그리고 평균을 구하는 예제.
import java.io.*;
import java.util.*;

public class Exam08 {
	public static void main(String[] ar) throws IOException {
		if (ar.length < 1)
			System.exit(0);
		String str = "";
		for (int i = 0; i < ar.length; ++i) {
			str += ar[i] + " ";
		}
		System.out.println("str=" + str);
		// Scanner class 를 통하여 입력되는 내용을 처리하고자 한다면
		
		Scanner in = new Scanner(str);
		int i = 0;
		int tot = 0;
		while(in.hasNextInt()){ //str에 내용이 있다면 while문 실행하기
			tot = tot + in.nextInt(); //sum이 나올 것임
			System.out.println(in.next());
			i++; //i는 들어온 갯수를 세는 것. 즉, 입력변수의 길이(갯수)를 측정하는 변수.
		}
		System.out.println("총 개수="+i+"개");
		System.out.println("총합="+tot);
		System.out.println("평균="+tot/i);
	}
}
import java.io.*;
class AAA implements Serializable/*객체 직렬화*/{
	int x = 100;
	int y = 200;
	int z = 300;
} // 이 멤버들을 전부 보내위해 묶어서 보내는 방법에 객체를 이용하면 좋겠다(?).
public class Exam09 {
	public static void main(String [] ar) throws IOException {
		AAA ap = new AAA();
		ap.z=400; //←추가하여 수정 후 Exam10을 실행하면 ap.z는 변경된 것을 확인 할 수 있음. 이것을 네트워크 전송방법이라고 함.
		// 이 ap라는 객체를 객체를 이용하여 보내자는 것.
		
		//우선 파일 객체를 하나 만들어야 함.
		File f = new File("test.txt");
		FileOutputStream fos = new FileOutputStream(f);
		BufferedOutputStream bos = new BufferedOutputStream(fos, 1024);
		ObjectOutputStream oos = new ObjectOutputStream(bos);
		
		oos.writeObject(ap);
		oos.close();
		System.out.println("출력 완료");
	}

}
//객체화된 파일을 수신하는 코드예제
import java.io.*;

public class Exam10 {
	public static void main(String[] ar) throws IOException {
		// aaa 파일은 폴더 안에 있기 때문에 필요 없음 :(
		File f = new File("test.txt");
		FileInputStream fis = new FileInputStream(f); // f에 대한 입력스트림 권한을 열겠습니다는 내용
		BufferedInputStream bis = new BufferedInputStream(fis, 1024); // 버퍼는 메모리영역의 임시 영역에 넣어둠
		ObjectInputStream ojs = new ObjectInputStream(bis);

		// 이제 파일을 읽어오면 됨!
		Object obj = null; // obj 변수를 초기화 하기.
		try {// readObject인 경우 예외처리가 두 가지를 취하여 주어야 함.
			obj = ojs.readObject(); // ojs를 읽어오기. 이 부분만 입력하면 오류가 발생하기 때문에 try-catch문을 사용해야 함.
		} catch (ClassNotFoundException e) {
		}
		//Obj에 들어온 데이터 타입은?
		AAA/*클래스를 형변환*/ ap = (AAA)obj; //형변환은 클래스 이름으로 해야 함.
		System.out.println("x="+ap.x);
		System.out.println("y="+ap.y);
		System.out.println("z="+ap.z);
	}
}

 

반응형
LIST
댓글
링크
공지사항
최근에 올라온 글