티스토리 뷰
// 클래스를 이해하기 위한 클래스 정보에 있는 생성자의 파악예제프로그램
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
'공부합시다 > 찍먹' 카테고리의 다른 글
[실습]체크박스와 체크박스 그룹 (0) | 2021.04.05 |
---|---|
[명품자바 프로그래밍] 2장 실습 (0) | 2021.03.17 |
[명품자바 프로그램] 8장 실습문제 (0) | 2021.03.12 |
[명품자바 프로그래밍] 3장 실습문제 (0) | 2021.03.12 |
인터페이스(Interface) (0) | 2021.03.11 |
댓글