์ƒ์„ธ ์ปจํ…์ธ 

๋ณธ๋ฌธ ์ œ๋ชฉ

[JAVA] ๋กœ๊ทธ์™€ ํŒŒ์ผ ์ €์žฅ

JAVA

by ๋ฏธ๋กœ910 2024. 5. 21. 17:23

๋ณธ๋ฌธ

๐Ÿ’ก ๋งค๋ฒˆ ๋กœ๊น… ์ฝ”๋“œ๋ฅผ ์ž‘์„ฑํ•˜๋Š” ๊ฒƒ์€ ๋ถˆํŽธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
๊ทธ๋ž˜์„œ ๋กœ๊ทธ๋ฅผ ํŽธ๋ฆฌํ•˜๊ฒŒ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋„๋ก ํด๋ž˜์Šค๋ฅผ ์„ค๊ณ„ํ•˜๊ณ , ์˜๊ตฌ์ ์œผ๋กœ ๋กœ๊ทธ๋ฅผ ์ €์žฅํ•  ์ˆ˜ ์žˆ๋Š” ํŒŒ์ผ ์ €์žฅ ๊ธฐ๋Šฅ์„ ํฌํ•จํ•˜๋Š” ์ฝ”๋“œ๋ฅผ ์ž‘์„ฑํ•ด ๋ด…์‹œ๋‹ค.

ํ”„๋กœ์ ํŠธ ์ƒ์„ฑ

public class ConsoleLogger {

	public void log(String message) {
		System.out.println(message);
	}

}// end of class
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.FileReader;
import java.io.FileWriter;
import java.text.SimpleDateFormat;
import java.util.Date;

public class FileLogger {

	private String fileName;
	private SimpleDateFormat dateFormat;

	public FileLogger(String fileName) {
		this.fileName = fileName;
		this.dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
	}

	public void log(String message) {
		try (BufferedWriter writer = new BufferedWriter(new FileWriter(fileName, true))) {
			// ํ˜„์žฌ ์‹œ๊ฐ„
			String now = dateFormat.format(new Date());
			writer.write(now + "::" + message);
			writer.newLine();
			writer.flush();

		} catch (Exception e) {
			e.printStackTrace();
		}
	}

	public void readLogs() {

		try (BufferedReader reader = new BufferedReader(new FileReader(fileName))) {
			String line;
			while ((line = reader.readLine()) != null) {
				System.out.println(line);
			}

		} catch (Exception e) {
			e.printStackTrace();
		}

	}
}
public class MyLogger {

	private static ConsoleLogger consoleLogger = new ConsoleLogger();
	private static FileLogger fileLogger = new FileLogger("mLogger.txt");

	// ์ฝ˜์†”์ฐฝ์— ๋กœ๊ทธ ์ฐ๋Š” ๊ธฐ๋Šฅ
	public static void logToConsole(String message) {
		consoleLogger.log(message);
	}

	// ์ฝ˜์†”์ฐฝ + ํŒŒ์ผ์— ์ €์žฅํ•˜๋Š” ๊ธฐ๋Šฅ
	public static void logToFile(String message) {
		logToConsole(message);
		fileLogger.log(message);
	}

}
public class MainTest {

	public static void main(String[] args) {
	
		MyLogger.logToConsole("์‹คํ–‰ 1");
		System.out.println("-----------------------");
		
		MyLogger.logToFile("์˜ˆ์™ธ ํ™•์ธ null pointer");
		System.out.println("-----------------------");
		
		MyLogger.logToFile("์˜ˆ์™ธ ํ™•์ธ ํ˜• ๋ณ€ํ™˜ ์˜ค๋ฅ˜ ๋ฐœ์ƒ");
	}

}

์‹คํ–‰ ๊ฒฐ๊ณผ_______

------------------------------------------

โ–ถ txt ํŒŒ์ผ ์ƒ์„ฑ๋จ

โ–ถ txt ํŒŒ์ผ ์ž…๋ ฅ ํ™•์ธ

๊ด€๋ จ๊ธ€ ๋”๋ณด๊ธฐ