NIO 파일 입출력
public class TestFile {
//
@Test
public void testWriteFile() throws Exception {
// 1.
FileOutputStream fos = new FileOutputStream("basic.txt");
// 2.
FileChannel fc = fos.getChannel();
// 3.
ByteBuffer buffer = ByteBuffer.allocate(1024);
// 4. , 。
buffer.put("hello nio".getBytes());
// 5. , , 。
// 。
buffer.flip();
//
fc.write(buffer);
//
fos.close();
}
//
@Test
public void testReadFile() throws Exception {
File file = new File("basic.txt");
// 1.
FileInputStream fis = new FileInputStream(file);
// 2. channel
FileChannel fc = fis.getChannel();
// 3. buffer
ByteBuffer buffer = ByteBuffer.allocate((int) file.length());
// 4.
fc.read(buffer);
System.out.println(new String(buffer.array()));
}
//
@Test
public void testCopyFile() throws Exception {
File file = new File("basic.txt");
// 1.
FileInputStream fis = new FileInputStream(file);
FileOutputStream fos = new FileOutputStream("copyBasic.txt");
// 2. channel
FileChannel readChannel = fis.getChannel();
FileChannel writeChannel = fos.getChannel();
// 3. copy
readChannel.transferTo(0, readChannel.size(), writeChannel);
// writeChannel.transferFrom(readChannel, 0, readChannel.size());
// 6.
fis.close();
fos.close();
}
}
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
소스 코드가 포함된 Python 프로젝트텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.