다크호스 프로그래머 자바 파일 흐름 읽 기와 쓰기
자바 파일 흐름 은 바이트 흐름 과 문자 흐름 으로 나 뉘 는데 파일 읽 기와 쓰 기 는 모두 문자 흐름 과 바이트 흐름 을 바탕 으로 한다
파일 읽 기 는 InputStream 과 Reader 를 포함 합 니 다.
출력 스 트림 과 Writer 를 포함 하 는 파일 쓰기
파일 형식 이 텍스트 파일 이면 Reader 와 Writer 를 사용 하고, 파일 형식 이 텍스트 가 아 닌 파일 이면 InputStream 과 OutputStream 을 사용 합 니 다.
파일 이 크 면 파일 읽 기와 쓰기 의 효율 을 높 여야 합 니 다. Buffered 를 접두사 로 하고 위의 네 가지 기본 클래스 를 접두사 로 하 는 클래스 를 사용 해 야 합 니 다. 예 를 들 어 Buffered InputStream, Buffered Reader, Buffered OutputStream, Buffered Writer 등 은 그들의 장식 류 라 고 부 릅 니 다. 다음은 두 가지 읽 기와 쓰기 의 예 입 니 다. 각각 텍스트 파일 읽 기와 쓰기, 비 텍스트 파일 읽 기와 쓰기 입 니 다.
import java.io.*;
public class InputStreamDemo {
public InputStreamDemo() {
}
public void writeToTxt(String fileName) throws Exception
{
BufferedReader br=new BufferedReader(new InputStreamReader(System.in));
BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(new FileOutputStream(fileName),"GBK"));
String line=null;
while((line=br.readLine())!=null)
{
if(new String(line).equals("over"))
break;
bw.write(line);
bw.newLine();
bw.flush();
}
}
public void copyFile(String fileName,String fileName2){
BufferedInputStream bis=null;
BufferedOutputStream bos = null;
try{
bis = new BufferedInputStream(new FileInputStream(fileName));
bos = new BufferedOutputStream(new FileOutputStream(fileName2));
byte[] by = new byte[1024];
int len=0;
while((len=bis.read(by))!=-1)
{
bos.write(by,0,len);
}
}catch(IOException e)
{
new RuntimeException(" ");
}
finally{
try{
bis.close();
bos.close();
}catch(Exception e)
{}
}
}
public static void main(String [] args) throws Exception
{
InputStreamDemo id = new InputStreamDemo();
id.copyFile("d:\\111.jpg","d:\\222.jpg");
}
}
안 드 로 이 드 교육, 자바 교육, 당신 과 의 교 류 를 기대 합 니 다!
자세히 보기:http://edu.csdn.net/heima
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
Is Eclipse IDE dying?In 2014 the Eclipse IDE is the leading development environment for Java with a market share of approximately 65%. but ac...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.