我想編寫一個InputStream,它從另一個InputStream獲取其輸入並對其執行某些操作。我發現FilterInputStream提供了我正在尋找的東西。Java - 編寫FilterInputStream
那麼編寫我自己的FilterInputStream時,最佳做法是什麼?標準實現只是將所有讀取請求傳遞給原始InputStream。所以,我有這樣的事情:
public class MyFilterInputStream extends FilterInputStream {
public MyFilterInputStream(InputStream inputStream) {
super(inputStream);
}
public int read() {
int i = in.read();
int j = doSomething(i);
return j;
}
...
}
它會更好使用多線程技術,其中,例如,一個線程不斷地從在讀取並在隨後被MyFilterInputStream訪問的緩衝存儲的數據。讀()? (特別是當所產生從所消耗的量的不同的數據的量)
更新:
的具體應用將是一個原始音頻流作爲輸入和一個(以某種方式)壓縮音頻流作爲輸出。
你到底想做什麼? –
更新了問題 – moe1