๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ

ํ”„๋กœ๊ทธ๋ž˜๋ฐ ๊ณต๋ถ€/Java

[18์ผ์ฐจ] File (1), ์žฌ๊ท€ ๋ฉ”์†Œ๋“œ

Ex80

 

File ํŒŒ์ผ/๋””๋ ‰ํ† ๋ฆฌ ์กฐ์ž‘, ํŒŒ์ผ ์ž…์ถœ๋ ฅ

 

ํŒŒ์ผ ์ •๋ณด

//ํŒŒ์ผ ๊ฒฝ๋กœ
String path = "C:\\class\\code\\java\\file\\test.txt";
		
//ํŒŒ์ผ ์ฐธ์กฐ ๊ฐ์ฒด > java.io.File ํด๋ž˜์Šค
File file = new File(path);
		
//ํ•ด๋‹น ๊ฒฝ๋กœ์— ํŒŒ์ผ์ด ์‹ค์ œ๋กœ ์กด์žฌํ•˜๋Š”์ง€?
//System.out.println(file.exists());

if (file.exists()) {
	
	//ํŒŒ์ผ ์กฐ์ž‘
	System.out.println("ํŒŒ์ผ ์žˆ์Œ");
	
	System.out.println(file.getName()); //test.txt
	
	System.out.println(file.isFile()); //true > ํŒŒ์ผ์ธ์ง€
	System.out.println(file.isDirectory()); //false > ํด๋”์ธ์ง€
	
	System.out.println(file.length()); //19 > ํŒŒ์ผ ํฌ๊ธฐ(๋ฐ”์ดํŠธ)
	
	System.out.println(file.getAbsolutePath()); //C:\class\code\java\file\test.txt > ๊ฒฝ๋กœ
	
	//-------------------------------------------------์ด ์œ„๋กœ ์ž์ฃผ์”€
	
	System.out.println(file.lastModified()); //1677219006485 > ์ˆ˜์ •ํ•œ ๋‚ ์งœ(ํ‹ฑ๊ฐ’)
	System.out.println(file.isHidden()); //false
	System.out.println(file.getParent()); //C:\class\code\java\file
	
	
	//tick > Calendar๋กœ ๋ฐ”๊พธ๋Š” ๋ฐฉ๋ฒ•
	Calendar c1 = Calendar.getInstance();
	
	System.out.println(c1.getTimeInMillis());
	
	c1.setTimeInMillis(file.lastModified());
	
	System.out.printf("%tF %tT\n", c1, c1);
	
	
} else {
	System.out.println("ํŒŒ์ผ ์—†์Œ");
}

 

ํด๋”(Folder), ๋””๋ ‰ํ† ๋ฆฌ(Directory) ์ •๋ณด

//ํด๋” ๊ฒฝ๋กœ
String path = "C:\\class\\code\\java\\file";

//ํด๋” ์ฐธ์กฐ ๊ฐ์ฒด
//- ๋””๋ ‰ํ† ๋ฆฌ๋Š” ํŒŒ์ผ์˜ ์ผ์ข…์ด๋‹ค.
File dir = new File(path);

if (dir.exists()) {
	
	System.out.println("ํด๋” ์žˆ์Œ.");
	
	System.out.println(dir.getName()); // file
	
	System.out.println(dir.isFile()); //false
	System.out.println(dir.isDirectory()); //true
	
	//*** ํด๋”๋Š” ํฌ๊ธฐ๊ฐ€ ํ•ญ์ƒ 0์ด๋‹ค.
	System.out.println(dir.length()); //0 > ํด๋”์˜ ํฌ๊ธฐ
	System.out.println(dir.getAbsolutePath()); //C:\class\code\java\file
	
	//-------------------------------------------------
	
	System.out.println(dir.lastModified()); //1677218977226
	System.out.println(dir.isHidden()); //false
	System.out.println(dir.getParent()); //C:\class\code\java
	
} else {
	System.out.println("ํด๋” ์—†์Œ.");
}

 

ํŒŒ์ผ ์กฐ์ž‘

-์ƒˆ ํŒŒ์ผ ๋งŒ๋“ค๊ธฐ

String path = "C:\\class\\code\\java\\file\\์ˆ˜์—….txt";

File file = new File(path);

try {
	
	System.out.println(file.createNewFile());
	
} catch (IOException e) {
	e.printStackTrace();
}

 

-ํŒŒ์ผ๋ช… ์ˆ˜์ •ํ•˜๊ธฐ

//ํŒŒ์ผ ์กฐ์ž‘
//- ํŒŒ์ผ๋ช… ์ˆ˜์ •ํ•˜๊ธฐ
//- ์ˆ˜์—….txt > class.txt

String path = "C:\\class\\code\\java\\file\\์ˆ˜์—….txt";
File file = new File(path);

//์ˆ˜์ • ํ›„
String path2 = "C:\\class\\code\\java\\file\\class.txt";
File file2 = new File(path2);

if (file.exists()) {
	
	boolean result = file.renameTo(file2);
	System.out.println(result);
	
}

 

-ํŒŒ์ผ ์ด๋™ํ•˜๊ธฐ

//ํŒŒ์ผ ์กฐ์ž‘
//- ํŒŒ์ผ ์ด๋™ํ•˜๊ธฐ
String path = "C:\\class\\code\\java\\file\\์ˆ˜์—….txt";
File file = new File(path);

//๊ฒฝ๋กœ์™€ ํŒŒ์ผ์ด๋ฆ„ ๋™์‹œ์— ๋ฐ”๊ฟ€ ์ˆ˜ ์žˆ์Œ
String path2 = "C:\\class\\code\\java\\move\\test.txt";
File file2 = new File(path2);

if (file.exists()) {
	
	boolean result = file.renameTo(file2);
	System.out.println(result);
	
}

 

-ํŒŒ์ผ ์‚ญ์ œํ•˜๊ธฐ

//ํŒŒ์ผ ์กฐ์ž‘
//- ํŒŒ์ผ ์‚ญ์ œํ•˜๊ธฐ
String path = "C:\\class\\code\\java\\file\\test.txt";
File file = new File(path);

if (file.exists()) {
	
	//ํœด์ง€ํ†ต ์‚ญ์ œ: "ํœด์ง€ํ†ต" ํด๋”๋กœ ์ด๋™ํ•˜๊ธฐ
	//์ง„์งœ ์‚ญ์ œ: ํ•˜๋“œ ๋””์Šคํฌ์—์„œ ์†Œ๋ฉธ
	boolean result = file.delete(); //์ง„์งœ ์‚ญ์ œ(๋ณต๊ตฌ ๋ถˆ๊ฐ€๋Šฅ)
	System.out.println(result);
	
}

 

ํด๋” ์กฐ์ž‘

- ์ƒˆํด๋” ๋งŒ๋“ค๊ธฐ

//ํด๋” ์กฐ์ž‘
//- ์ƒˆํด๋” ๋งŒ๋“ค๊ธฐ
//String path = "C:\\class\\code\\java\\java\\file\\aaa";
//File dir = new File(path);

//boolean result = dir.mkdir();
//System.out.println(result);

String path = "C:\\class\\code\\java\\file\\bbb\\ccc\\ddd";
File dir = new File(path);

boolean result = dir.mkdirs(); //s๋ถ™์ด๋ฉด ์—†๋Š” ํด๋” ํ•œ๋ฒˆ์— ๋งŒ๋“ค์–ด์คŒ
System.out.println(result);

 

[์š”๊ตฌ์‚ฌํ•ญ] ํšŒ์›๋ช…๋‹จ > ๊ฐœ์ธ ํด๋” ์ƒ์„ฑ

String[] member = { "ํ™๊ธธ๋™", "์•„๋ฌด๊ฐœ", "ํ•˜ํ•˜ํ•˜", "ํ˜ธํ˜ธํ˜ธ", "์œ ์žฌ์„", "๊ฐ•ํ˜ธ๋™", "์กฐ์„ธํ˜ธ", "์ด์ด๊ฒฝ" };

for (int i=0; i<member.length; i++) {
	
	//ํšŒ์› 1๋ช… > 1๊ฐœ ํด๋” ์ƒ์„ฑ
	String path = String.format("C:\\class\\code\\java\\file\\member\\[๊ฐœ์ธํด๋”]%s๋‹˜", member[i]);
	
	File dir = new File(path);
	
	dir.mkdir();
	
}

System.out.println("์ข…๋ฃŒ");

 

[์š”๊ตฌ์‚ฌํ•ญ] ๋‚ ์งœ๋ณ„ ํด๋” ์ƒ์„ฑ

//- "2023-01-01" ~ "2023-12-31" ์ด 365๊ฐœ ์ƒ์„ฑ

//- C:\class\code\java\file\plan\2023-01-01

//๋ฃจํ”„ + Calendar

Calendar c = Calendar.getInstance();
c.set(2023, 0, 1);

for (int i=0; i<365; i++) {
	System.out.printf("%tF\n", c);
	
	String path = "C:\\class\\code\\java\\file\\plan\\" + String.format("%tF", c);
	
	File dir = new File(path);
	
	dir.mkdir();
	
	c.add(Calendar.DATE, 1);
	
}

 

- ํด๋”๋ช… ์ˆ˜์ •ํ•˜๊ธฐ + ์ด๋™ํ•˜๊ธฐ

//ํด๋” ์กฐ์ž‘
//- ํด๋”๋ช… ์ˆ˜์ •ํ•˜๊ธฐ + ์ด๋™ํ•˜๊ธฐ
//- aaa > fff
File dir1 = new File("C:\\class\\code\\java\\file\\ํšŒ์›");
File dir2 = new File("C:\\class\\code\\java\\move\\ํšŒ์›");

if (dir1.exists()) {
	
	dir1.renameTo(dir2);
	
}

 

 

ํด๋” ์‚ญ์ œํ•˜๊ธฐ(๋นˆ ํด๋”๋งŒ ์‚ญ์ œ ๊ฐ€๋Šฅ)

- ๋‚ด์šฉ ์žˆ๋Š” ํด๋” ์‚ญ์ œํ•˜๋ ค๋ฉด > ํŒŒ์ผ ๋ชจ๋‘ ์‚ญ์ œ ํ›„ ํด๋” ์‚ญ์ œ(์ง์ ‘ ๊ตฌํ˜„)

File dir1 = new File("C:\\class\\code\\java\\file\\bbb");

if (dir1.exists()) {
	boolean result = dir1.delete();
	System.out.println(result);
}

 

ํด๋” ๋‚ด์šฉ๋ณด๊ธฐ

//ํด๋” ๋‚ด์šฉ ๋ณด๊ธฐ
String path = "C:\\class\\dev\\eclipse";
File dir = new File(path);

if (dir.exists()) {
	
	File[] list = dir.listFiles();
	
//		for (File file : list) {
//			System.out.println(file.getName());
//			System.out.println(file.isFile());
//			System.out.println(file.isDirectory());
//			System.out.println();
//		}
	
	for (File file : list) {
		
		if(file.isDirectory()) {
			System.out.printf("[%s]\n", file.getName());
		}
		
	}