InputStream, OutputStream
FileInputStream / FileOutputStream
import java.io.FileInputStream;
public class FileInputStreamExample {
public static void main(String[] args) {
try {
FileInputStream fileInput = new FileInputStream("codestates.txt");
int i = 0;
while ((i = foileInput.read()) != -1) { //fileInput.read()의 리턴값을 i에 저장 후 값이 -1인지 확인
System.out.println((char)i);
}
fileInput.close();
}
catch (Exception e) {
System.out.println(e);
}
}
try {
FileInputStream fileInput = new FileInputStream("codestates.txt");
BufferedInputStream bufferedInput = new BufferedInputStream(fileInput);
int i = 0;
while ((i = bufferedInput.read()) != -1) {
System.out.println((char)i);
}
catch (Exception e) {
System.out.println(e);
}
}
}
import java.io.FileOutputStream;
public class FileOutputStreamExample {
public static void main(String[] args) {
try {
FileOutputStream fileOutput = new FileOutputStream("codestates.txt");
String word = "code";
byte[] b = word.getBytes();
fileOutput.write(b);
fileOutput.close();
}
catch (Exception e) {
System.out.println(e);
}
}
}
FileReader / FileWriter
File : File 클래스로 파일과 디렉토리 접근 가능
import java.io.*;
public class FileExample {
public static void main(String args[]) throws IOException {
File file = new File("../codestates.txt");
System.out.println(file.getPath()); // 파일 위치 나타냄
System.out.println(file.getParent()); // 상위폴더 위치 나타냄
System.out.println(file.getCanonicalPath()); // 절대위치 나타냄
System.out.println(file.canWrite()); // 파일 변경 여부 확인
// 위치, 파일이름 지정
File file = new File("./", "newCodestates.txt");
file.createNewFile(); // 파일 생성
// 폴더 지정해 안에 있는 파일들을 지정 가능
File parentDir = new File("./");
File[] list = parentDir.listFiles(); // 현재 위치에 있는 파일들을 배열로
String prefix = "code";
for(int i =0; i <list.length; i++) {
String fileName = list[i].getName();
if(fileName.endsWith("txt") && !fileName.startsWith("code")) {
list[i].renameTo(new File(parentDir, prefix + fileName));
}
}
}
}