Java IO --- 학습 노트 (데이터 흐름)

6331 단어 java io
데이터 흐름:
인터페이스 DataInput 과 DataOutput 은 비교적 고 급 스 러 운 데이터 입 출력 방식 을 설계 했다. 바이트 와 바이트 배열 을 처리 할 수 있 는 동시에 int, float, boolean 등 기본 데이터 형식 도 처리 할 수 있다. 이런 데 이 터 는 파일 에서 의 표현 방식 이 메모리 에 있 는 것 과 마찬가지 로 read (), readInt (), readByte () 와 같이 변환 할 필요 가 없다.write (), writeChar (), writeBoolean ()... 그 밖 에 readLine () 방법 으로 한 줄 의 정 보 를 읽 을 수 있 습 니 다.
방법:
방법.
반환 값
설명 하 다.
readBoolean()
boolean
readByte()
byte
readShort()
short
readChar()
char
readInt()
int
readLong()
long
readDouble()
double
readFloat()
float
readUnsignedByte()
int
readUnsignedShort()
int
readFully(byte[] b)
void
입력 스 트림 과 는 다른 바이트 배열 을 읽 습 니 다.read
reaFully(byte[] b, int off,int len)
void
지 정 된 길 이 를 가득 읽 으 면 InputStream. read 와 다 릅 니 다.
skipBytes(int n)
int
InputStream. skip 와 등가
readUTF()
String
입력 에서 문자열 읽 기 UTF - 8 형식 설치
readLine()
String
Enter (\ r) 에 따라 줄 바 꾸 기 () 를 분할 문자 로 문자열 을 읽 습 니 다. UNICODE 는 완전히 지원 되 지 않 습 니 다.
writeBoolean(boolean v)
void
writeByte(int v)
void
writeShort(int v)
void
writeChar(int v)
void
writeInt(int v)
void
writeLong(long v)
void
writeFloat(float v)
void
writeDouble(double v)
void
write(byte[] b)
void
OutputStream. write 와 같은 의미 입 니 다.
write(byte[] b, int off, int len)
void
OutputStream. write 와 같은 의미 입 니 다.
write(int b)
void
OutputStream. write 와 같은 의미 입 니 다.
writeBytes(String s)
void
각 문자 의 낮은 8 자리 만 출력 하기;유 니 코드 를 완전히 지원 하지 않 습 니 다.
writeChars(String s)
void
모든 문 자 는 출력 에서 두 바이트 를 차지한다.
데이터 흐름 클래스 DateInputStream 과 DataOutputStream 의 처리 대상 은 바이트 나 바이트 배열 을 제외 하고 파일 의 서로 다른 데이터 형식 에 대한 읽 기와 쓰기 도 실현 할 수 있 습 니 다.
  • 는 각각 DataInput 과 DataOutput 인터페이스
  • 를 실현 했다.
  • 바이트 흐름 의 읽 기와 쓰기 수단 을 제공 하 는 동시에 입력 흐름 에 boolean, int, long, double 등 기본 데이터 형식 을 통일 적 으로 기록 하고 기본 데이터 형식의 값 을 다시 읽 을 수 있 습 니 다.
  • 문자열 읽 기와 쓰기 수단 제공
  • 데이터 흐름 은 네트워크 연결, 파일 등 이미 만들어 진 데이터 대상 을 연결 할 수 있다.데이터 흐름 은 다음 과 같은 방식 으로 만 들 수 있 습 니 다.
    FileInputStream fis = new FileInputStream("file1.txt");
    FileOutputStream fos = new FileOutputStream("file2.txt");
    DataInputStream dis = new DataInputStream(fis);
    DataOutputStream dos = new DataOutputStream(fos);

    다음은 구체 적 인 코드 를 통 해 그 용법 을 살 펴 보 자.
    import java.io.DataInputStream;
    import java.io.DataOutputStream;
    import java.io.FileInputStream;
    import java.io.FileOutputStream;
    import java.io.IOException;
    
    public class DataStream {
    
        public static void main(String[] args) throws IOException{
            // TODO Auto-generated method stub
            //    a.txt   
            FileOutputStream fos = new FileOutputStream("a.txt");
            DataOutputStream dos = new DataOutputStream(fos);
            try {
                dos.writeBoolean(true);
                dos.writeByte((byte)123);
                dos.writeChar('J');
                dos.writeDouble(3.1415926);
                dos.writeFloat(2.122f);
                dos.writeInt(123);
            }
            finally {
                dos.close();
            }
            //    a.txt   
            FileInputStream fis = new FileInputStream("a.txt");
            DataInputStream dis = new DataInputStream(fis);
            try {
                System.out.println("\t" + dis.readBoolean());
                System.out.println("\t" + dis.readByte());
                System.out.println("\t" + dis.readChar());
                System.out.println("\t" + dis.readDouble());
                System.out.println("\t" + dis.readFloat());
                System.out.println("\t" + dis.readInt());
            }
            finally {
                dis.close();
            }
        }
    
    }

    좋은 웹페이지 즐겨찾기