位元組流套介面上的read和write函式的使用與普通的i/o操作不同。由於核心中套介面的緩衝區是乙個有限的空間,當這個緩衝空間不足以儲存你要接收或傳送的資料時,函式返回的位元組數就會比預期傳送的位元組數少。這時,再次把剩餘的資料操作一次即可。
為了預防緩衝區空間不足的情況,可以呼叫readn、writen、readline、writelin函式
//writen函式:往乙個描述字寫n位元組return readn number
ssize_t readn(int fd, void*vptr, size_t n)
else
if(nread == 0
)
break; //
eofnleft -=nread;
ptr +=nread;
}return (n -nleft);
}
ssize_t writen(int fd, constreadline函式:從乙個描述字讀文字,一次1個位元組void *vptr, size_t n)
nleft -=nwriten;
ptr +=nwriten;
}return
(n);
}
ssize_t readline(int fd, void *vptr, size_t maxlen)else
if(rc == 0
)
else
}*ptr = 0
;
return
n;}
位元組流讀寫
1 inputstream 抽象了應用程式讀取資料的方式 outputstream 抽象了應用程式寫出資料的方式 2 輸入流的基本方法 inputstream in new inputstream int b in.read 讀取乙個位元組無符號填充到int的最後8位,返回的是讀到的位元組 換成in...
java IO位元組流讀寫檔案
如果是按照資料的流向劃分 輸入流 輸出流以當前程式做參照物,觀察資料是流入還是流出,如果流出,則使用輸出流,如果資料是流入,則使用輸入流。如果按照處理的單位劃分 位元組流 位元組流讀取得都是檔案中二進位制資料,讀取到二進位制資料不會經過任何的處理。字元流 字元流讀取的資料是以字元為單位的 字元流也是...
字元流位元組流讀寫檔案
public class iopractice else 位元組流讀寫檔案 inputstream in new fileinputstream file file file2 new file e test2.txt outputstream out new fileoutputstream fi...