拋出異常的代碼在此處:
MappedByteBuffer buffer = channel.map(MapMode.READ_WRITE, 0, avalible);
其中channel是一個fileChannel,我本來是想對這個文件進行修改,可是一直拋出NonWritableChannelException
也特地在本地文件系統看了下葯處理的文件,發現是可讀寫的,很糾結。。。
最后在網上搜到了。是因為我的fileChanned是通過fileInputStream get出來的,所以只可讀
當我換成從RandomAccessFile get出來的時候問題就解決了