jdk1.8使用这个发放转换报错了java.nio.channels.NonWritableChannelException
时间: 2024-02-01 07:15:27 浏览: 133
JDK1.7 之java.nio.file.Files 读取文件仅需一行代码实现
`NonWritableChannelException` 表示该通道是只读的,不能写入数据。这通常发生在使用只读模式打开文件时。因此,您需要检查使用的通道是否可写。
如果您正在使用 `FileChannel` 类,您可以通过以下方式打开可写通道:
```java
FileOutputStream fos = new FileOutputStream("file.txt");
FileChannel channel = fos.getChannel();
```
如果您已经打开了一个只读通道,您需要关闭它并重新打开一个可写通道:
```java
FileInputStream fis = new FileInputStream("file.txt");
FileChannel channel = fis.getChannel();
// 关闭只读通道
fis.close();
// 打开可写通道
FileOutputStream fos = new FileOutputStream("file.txt");
channel = fos.getChannel();
```
希望这可以帮助您解决问题。
阅读全文