폴더 생성
File dir2 = new File("D:/test/1");
if(dir2.mkdir()) System.out.println(dir2+"만들기 성공");
else System.out.println(dir2+"만들기 실패");
mkdir()는 부모 폴더를 먼저 만든 후에 자식 폴더를 만들어야 함
부모, 자식 폴더를 한 번에 생성하고 싶다면 mkdirs()를 사용해야 함
File dir1 = new File("D:/test/1/2");
if(!dir1.exists())
{
if(dir1.mkdirs()) {
System.out.println(dir1+"만들기 성공");
}
else {
System.out.println(dir1+"만들기 실패");
}
}
파일 생성
File f = new File("D:/test/java.txt");
if (!f.exists()) {
try {
f.createNewFile();
} catch (IOException e) {
e.printStackTrace();
}
}
데이터 읽기
FileInputStream fis = null;
fis = new FileInputStream("D:\\test/abcd.txt");
int data =0;
while((data=fis.read())!=-1) //데이터가 없으면 -1 반환
{
System.out.println((char)(data));
}
fis.close();
try-catch까지 한 소스
<hide/>
FileInputStream fis = null;
try {
fis = new FileInputStream("D:\\test/abcd.txt");
int data =0;
while((data=fis.read())!=-1) //데이터가 없으면 -1 반환
{
System.out.println((char)(data));
}
} catch (Exception e) {
e.printStackTrace();
}
finally {
try {
fis.close();
} catch (IOException e) {
e.printStackTrace();
}
}
BufferInputStream
FileInputStream fis = new FileInputStream("D:/test/java.txt");
//지정하지 않으면 기본 사이즈 8192
BufferedInputStream bis = new BufferedInputStream(fis);
int data=0;
while((data=bis.read())!=-1)
{
System.out.println((char)data);
}
하드디스크에 자주 접촉하는 것은 물리적 손상을 일으킬 수 있으며 속도가 느림
따라서 한 번 접촉할 때 많은 값을 가져오는 것이 속도와 물리적인 측면에서 유리함
기본적으로 8192 바이트 크기를 가지며 사이즈를 수정할 수도 있음
데이터 쓰기
FileOutputStream fos = null;
fos = new FileOutputStream("D:/test/java.txt");
String str = "abcde";
fos.write(str.getBytes());
fos.close();
<hide/>
FileOutputStream fos = null;
try {
fos = new FileOutputStream("D:/test/java.txt");
String str = "abcde";
fos.write(str.getBytes()); //파일은 바이트로 이루어져있기 때문에 byte로
} catch (Exception e) {
e.printStackTrace();
}
finally {
try {
fos.close();
} catch (IOException e) {
e.printStackTrace();
}
}
파일 복사
Path source = Paths.get("D:/test/abcd.txt");
Path target = Paths.get("D:/test/javaCopy.txt");
try {
Files.copy(source, target,StandardCopyOption.REPLACE_EXISTING); //이미 있으면 덮어씌움
} catch (IOException e) {
e.printStackTrace();
}
'자바' 카테고리의 다른 글
JDBCUtil (0) | 2024.08.26 |
---|---|
yes24 데이터 DB 넣기 (0) | 2024.08.19 |
데이터 크롤링 (0) | 2024.08.09 |
maven (0) | 2024.08.09 |
톰캣 포트 변경하기 (0) | 2024.08.07 |