728x90
반응형
1. 영문으로 키보드로 문자열을 입력받아 (exit가 입력될때까지 문자열을 입력받음)
test.txt파일로 저장하는 프로그램을 작성해 보세요.
package test.aa;
import java.io.FileWriter;
import java.util.Scanner;
public class HW1 {
public static void main(String[] args) throws Exception{
Scanner scan=new Scanner(System.in);
FileWriter fw=new FileWriter("test.txt");
System.out.println("파일로 저장될 문자열을 입력하세요.. 종료는 exit");
while(true) {
String text=scan.nextLine();
if(text.equals("exit")) break;
fw.write(text+"\n");
}
fw.close();
System.out.println("파일로 저장 완료!");
}
}
2. 프로그램을 실행하면 test.txt파일의 모든 내용을 대문자로
변환해 upper_test.txt파일에 저장되도록 만들어 보세요.
## test.txt
hello!
my name is hong gil dong.
==> 프로그램 실행후 upper_test.txt파일에 아래처럼 저장된다.
HELLO!
MY NAME IS HONG GIL DONG.
package hw;
import java.io.FileReader;
import java.io.FileWriter;
import java.util.Scanner;
public class HW2 {
public static void main(String[] args) throws Exception{
Scanner scan=new Scanner(System.in);
FileReader fr=new FileReader("test.txt");
FileWriter fw=new FileWriter("upper_test.txt");
while(true) {
int n=fr.read();
if(n==-1) break;
char c=Character.toUpperCase((char)n);
fw.write(c);
}
fr.close();
fw.close();
System.out.println("대문자로 변환된 파일생성완료!");
}
}
3. 파일복사 프로그램을 만들어 보세요. (FileReader/FileWriter사용)
package hw;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;
public class HW3{
public static void main(String[] args) throws Exception{
FileReader fr=null;
FileWriter fw=null;
try {
fr=new FileReader("test.txt");
fw=new FileWriter("copy.txt");
long fileSize=0;
char[] cbuf=new char[100];
while(true) {
int n=fr.read(cbuf);
if(n==-1) break;
fw.write(cbuf,0,n);
fileSize += n;
}
System.out.println(fileSize +"bytes 크기의 파일복사성공!");
}catch(FileNotFoundException fe) {
System.out.println(fe.getMessage());
}catch(IOException ie) {
System.out.println(ie.getMessage());
}finally {
try {
if(fr!=null) fr.close();
if(fw!=null) fw.close();
}catch(IOException ie) {
System.out.println(ie.getMessage());
}
}
}
}
728x90
반응형
'java' 카테고리의 다른 글
[java]StringTokenizer (0) | 2022.04.21 |
---|---|
PrintWriter/InputStreamReader (0) | 2021.10.20 |
HashMap/Calender (0) | 2021.10.20 |
회원관리 기능 (0) | 2021.10.20 |
[9/17] class ,생성자,메소드 (0) | 2021.10.20 |