다연이네

[days18] txt파일을 불러와 명단 출력, htm파일로 불러오기, 파일 불러와 알파벳 개수 세기 본문

Java

[days18] txt파일을 불러와 명단 출력, htm파일로 불러오기, 파일 불러와 알파벳 개수 세기

 다연  2020. 10. 18. 15:54
반응형

1.  txt파일을 불러와 명단 출력, htm파일로 불러오기

package review;

import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.FileReader;
import java.io.FileWriter;

public class Review09 {

	public static void main(String[] args) {
		String name = ".\\src\\교육생명단.txt"; // .\\scr : scr 밑에 있는
		String [] names = new String[23];
		
		try(FileReader fr = new FileReader(name);
				BufferedReader br = new BufferedReader(fr)) {
			String line =null;
			int n = 1;
			while((line=br.readLine())!=null){
				//System.out.println(line); 명단 출력
				names= line.split("/");
				System.out.print(n+". "+names[0]+'\n'); //라인번호 출력, 이름만 출력
				n++;
			}
		} catch (Exception e) {
			e.printStackTrace();
		}
		
		//names배열에 있는 이름들을 파일로 저장하기
		String data = "<ul><li>"+String.join("</li><li>", names)+"</li></ul>";
		try(FileWriter fw = new FileWriter(".\\src\\samplee.htm");
				BufferedWriter bw = new BufferedWriter(fw)) {
			bw.write(data);
			
		} catch (Exception e) {
			e.printStackTrace();
		}

	}

}

2. 파일 불러와 알파벳 개수 세기 (대소문자 구별 없이)

package review;

import java.io.FileReader;
import java.util.Arrays;

public class Review01 {

	public static void main(String[] args) {

		String fileName = "days19\\Ex01.java";
		String path = System.getProperty("user.dir")+"\\src\\"+fileName;

		int [] cnt = new int[26];

		try(
				FileReader fr = new FileReader(path)
				) {
			char one;
			int i=-1;
			while((i=fr.read())!=-1) {
				one = (char)i;
				//System.out.print(one); 파일 출력

				one = Character.toUpperCase(one); // 전부 대문자로
				if(Character.isUpperCase(one)) { //대문자냐?
					cnt[one-65]++;
				}
			}
		} catch (Exception e) {
			e.printStackTrace();
		}

		System.out.println(Arrays.toString(cnt));

	}

}
반응형
Comments