小弟初学JAVA,请各位老师解答下为什么会抛出异常

玫瑰予故人 2018-12-24 10:20:13
1.
private static void randomAccessFileCopy()throws Exception {
RandomAccessFile in = new RandomAccessFile("C:\\Users\\Administrator\\Desktop\\class流程11.PNG", "r");
RandomAccessFile out =new RandomAccessFile("C:\\Users\\Administrator\\Desktop\\class流程10.PNG", "rw");


FileChannel fcin= in .getChannel();
FileChannel fcout=out.getChannel();
long size=fcin.size();
MappedByteBuffer inbuf=fcin.map(MapMode.READ_ONLY,0 , size);
MappedByteBuffer outbuf=fcout.map(MapMode.READ_WRITE,0, size);
for(int i=0;i<size;i++) {
outbuf.put(inbuf.get());

}
fcin.close();
fcout.close();
in.close();
out.close();
System.out.println("拷贝成功");


2.
private static void randomAccessFileCopy()throws Exception {
FileInputStream in=new FileInputStream("C:\\Users\\Administrator\\Desktop\\class流程11.PNG");
FileOutputStream out=new FileOutputStream("C:\\Users\\Administrator\\Desktop\\class流程10.PNG");


FileChannel fcin= in .getChannel();
FileChannel fcout=out.getChannel();
long size=fcin.size();
MappedByteBuffer inbuf=fcin.map(MapMode.READ_ONLY,0 , size);
MappedByteBuffer outbuf=fcout.map(MapMode.READ_WRITE,0, size);
for(int i=0;i<size;i++) {
outbuf.put(inbuf.get());

}
fcin.close();
fcout.close();
in.close();
out.close();
System.out.println("拷贝成功");


第一个能够运行为什么第二个抛出
java.nio.channels.NonReadableChannelException异常?
...全文
110 点赞 收藏 6
写回复
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
哈希塞特 2019-01-31
初学java就用NIO了吗?还用了零拷贝??
回复
余张的故事 2018-12-25
读取的文件已经打开或被其他进程占用了
回复
你这代码看得我头疼,你会设置断点吗? 自己调试一下
回复
夏落星空丶 2018-12-25
发帖时候在上面【黑体、倾斜、下划线】这行菜单。有个【代码】,把代码放在这个里面,会整洁很多,方便查阅。
回复
FileInputStream in=new FileInputStream("D:\\work\\关注.png");
// FileOutputStream out=new FileOutputStream("D:\\work\\关注1.PNG");

FileChannel fcin= in .getChannel();
// FileChannel fcout=out.getChannel();
FileChannel fcout = FileChannel.open(Paths.get("D:\\work\\关注1.PNG"),
StandardOpenOption.READ,StandardOpenOption.WRITE);
long size=fcin.size();
MappedByteBuffer inbuf=fcin.map(MapMode.READ_ONLY,0 , size);
MappedByteBuffer outbuf=fcout.map(MapMode.READ_WRITE,0 , size);
// fcout.write(inbuf);
for(int i=0;i<size;i++) {
outbuf.put(inbuf.get());
}
fcin.close();
fcout.close();
in.close();
System.out.println("拷贝成功");

//FileOutputStream创建文件输出流以指定的名称写入文件。貌似没有读的权限
回复



兄弟,,我对这个也有些疑惑,,第一行注释的地方有问题,,没想明白
回复
相关推荐
JAVA学习笔记——超简单的JAVA异常入门
超简单的JAVA异常入门异常的类型编译时异常例子1例子2运行时异常例子3例子4异常处理最简单的异常处理例子5捕捉特定的异常例子6如何定义和抛出一个异常例子7处理多种错误 异常的类型 JAVA中的异常主要分为两种,即...
小弟初学,遇到s2sh空指针异常高手指点
Java 里的异常(Exception)详解
作为一位初学者, 我也没有能力对异常谈得很深入. 只不过java里关于Exception的东西实在是很多. 所以这篇文章很长就是了.. 一, 什么java里的异常 由于java是c\c++ 发展而来的, 首先我们先看看c语言里的错误. ...
Java中的异常处理
Java 里的异常(Exception)...一, 什么java里的异常 由于java是c\c++ 发展而来的, 首先我们先看看c语言里的错误. 1.1 c语言里的错误 我们实现1个程序的过程包括, 代码编写, 编译代码成为程序, 执行程序. 其中大部...
浅析java中的已检查(checked)异常和未检查(unchecked)异常
作为一名java程序员,如果不懂异常,就绝对不是一名合格的程序员。异常看似简单,但是真正理解设计这种机制的背后用意...小弟不才,试着分析一下,希望能为初学者带来一点启发。如果有错误,还各路java大神及时指正。
!!!技术求教:java 对象序列化后,可传送对象至服务端,返回数据到客户端时抛出异常
技术求教:java 对象序列化后,可传送对象至服务端...at java.awt.EventDispatchThread.pumpEvents(Unknown Source) at java.awt.EventDispatchThread.run(Unknown Source) 小弟初学,搞不太明白,想各位大神求教!!!
!!...技术求教:java 对象序列化后,可传送对象至服务端,返回数据到客户端时抛出异常
技术求教:java 对象序列化后,可传送对象至服务端...at java.awt.EventDispatchThread.pumpEvents(Unknown Source) at java.awt.EventDispatchThread.run(Unknown Source) 小弟初学,搞不太明白,想各位大神求教!!!
不是很明确java中的trycatch中,finally()的作用
//上面这个程序显然是抛出异常的,但是为什么不在finally()之内的语句也执行了呢?? 感觉有没有finally,之后还不是一样执行么? 我是一个初学者,不是很理解finally的作用,恳请各位大神指教,小弟在此谢谢...
java连接数据库时没有问题但同样的代码jsp连接数据库就抛出异常
但在JSP中也是同样的代码却抛出了SQL异常,说是"找不到数据源名称",很是困惑,在JAVA明明可以的.希望各位高手指点. 时间关系给出部分代码,望各位海涵........... .... .... try{ Class.forName("sun.jdbc.odbc....
初学java
现在已经写了大半了,可是越些越觉得很不对劲儿,越写问题越大,总觉得自己写的很杂乱,想到那里写那里,比如那些代码可以重用,那些界面可以优化,着些界面该怎么组织好,什么时候该抛出错误,......有事一点头绪也...
linux用was发布新的程序浏览后报错,日志如下,好像是跟什么xml文件有关,小弟初学,实在不知道哪里错了...
[13-4-18 14:24:17:080 CST] 0000006e ServletWrappe E SRVE0068E: 未捕获到 servlet /WEB-INF/view/jsp/errors.jsp 的其中一个服务方法中抛出异常抛出异常: org.springframework.beans.factory....
Java 编程经验
想来学习Java也有两个年头了,永远不敢说多么精通,但也想谈谈自己的感受,写给软件学院的同仁们,帮助大家在技术的道路上少一点弯路。说得伟大一点是希望大家软件学院争气,其实最主要的还是大
Java学习经验
来学习Java也有两个年头了,永远不敢说多么精通,但也想谈谈自己的感受,写给软件学院的同仁们,帮助大家在技术的道路上少一点弯路。说得伟大一点是希望大家软件学院争气,其实最主要的还是大家自身的进步提升?? ...
Java多线程与并发库高级应用架构
张孝祥_Java多线程与并发库高级应用 【视频介绍:】  Java线程是一项非常基本和重要的技术,在偏底层和偏技术的Java程序中不可避免地要使用到Java线程技术,特别是android手机程序和游戏开发中,多线程成了必不可...
Java学习杂谈
Java学习杂谈一  1. 关于动态加载机制——  学习Java比C++更容易理解OOP的思想,毕竟C++还混合了不少面向过程的成分。很多人都能背出来Java语言的特点,所谓的动态加载机制等等。当然概念往往是先记住而后消化...
Java多线程与线程并发库高级应用笔记
以下内容是学习张老师Java多线程与线程并发库高级应用时所做的笔记,很有用 网络编辑器直接复制Word文档排版有点乱,提供原始文件下载 先看源文件概貌     张孝祥_Java多线程与并发库高级应用 【视频介绍:】  ...
数据池连接问题 小弟初学 急呀!
这句就抛出异常了。为什么?难道设置的地方有错误吗?Test是我的工程名。我不大明白这两句话: <Resoure name="jdbc/bn" auth="Container" type="javax.sql.DataSource"/> <ResoureParams name="jdbc/bn"> 这个name...
一个计算机专业学生几年的Java编程经验汇总 ...
学习Java比C++更容易理解OOP的思想,毕竟C++还混合了不少面向过程的成分。很多人都能背出来Java语言的特点,所谓的动态加载机制等等。当 然概念往往是先记住而后消化的,可有多少人真正去体会过动态加载的机制,试图...
两年JAVA编程经验汇总
想来学习Java也有两个年头了,永远不敢说多么精通,但也想谈谈自己的感受,写给软件学院的同仁们,帮助大家在技术的道路上少一点弯路。说得伟大一点是希望大家软件学院争气,其实最主要的还是大家自身的进步提升??...
一个计算机专业学生几年的Java编程经验汇总
想来学习Java也有两个年头了,永远不敢说多么精通,但也想谈谈自己的感受,写给软件学院的同仁们,帮助大家在技术的道路上少一点弯路。说得伟大一点是希望大家软件学院争气,其实最主要的还是大家自身的进步提升??...
Java编程经验汇总
学习Java比C++更容易理解OOP的思想,毕竟C++还混合了不少面向过程的成分。很多人都能背出来Java语言的特点,所谓的动态加载机制等等。当然概念往往是先记住而后消化的,可有多少人真正去体会过动态加载的机制,试图...
Hadoop初学
HadoopHadoop的介绍Hadoop有什么优点Hadoop发展史(了解)Hadoop三大发行版本Hadoop的组成Hadoop组成一:HDFSHadoop组成二:MapReduceHadoop组成三:Yarn Hadoop的介绍 (1) Hadoop是什么? 1.狭义:Hadoop是一个...
java面试题
找工作要面试,有面试就有对付面试的办法。以下一些题目来自我和我朋友痛苦的面试经历,提这些问题的公司包括IBM, E*Trade, Siebel, Motorola, SUN, 以及其它大小公司。...所以如果你看完此文后,不要抱怨说
(转)摘自:一个2年工作经验的Java学习心得
一个2年工作经验的Java学习心得 想来学习Java也有两个年头了,永远不敢说多么精通,但也想谈谈自己的感受,写给软件学院的同仁们,帮助大家在技术的道路上少一点弯路。说得伟大一点是希看大家软件学院争气,...
Java Study
学习Java比C++更容易理解OOP的思想,毕竟C++还混合了不少面向过程的成分。很多人都能背出来Java语言的特点,所谓的动态加载机制等等。当然概念往往是先记住而后消化的,可有多少人真正去体会过动态加载的机制,试图...
自己动手从0到1写嵌入式操作系统
这不是rtos源码分析的课程,而是为初级的同学设计,从基础原理讲师,一步步不断迭代设计rtos的课程! 用不到【2000行代码,汇编代码仅18行】(不含注释)实现一个精巧的可以运行在ARM Cortex-M内核芯片上的RTOS! 该RTOS功能与ucos类似,具体实现不同。学习之后,再去学习ucos之类的系统将没有什么问题。 1、系统地掌握RTOS的工作原理及其应用; 2、用更短的时间、更少的精力,学习RTOS相关知识; 3、设计出一个具备自己特色的RTOS。将其用作毕业设计、找工作的敲门砖; 4、提升技术水平,为升职加薪跳槽提供资本。
PPT模板下载
PPT模板下载我只是想要点积分啊 
vue-devtools chrome 插件
chrome(谷歌浏览器)vue代码调试插件, 已打包。解压后,通过chrome扩展程序加载即可使用。 使用方法: 1、chrome浏览器输入地址“chrome://extensions/”进入扩展程序页面 2、勾选开发者模式 3、点击“加载已解压的扩展程序...”按钮,选择解压后的chrome文件夹,即可添加成功。 4、添加完vue-devtools扩展程序之后,我们在调试vue应用的时候,ch rome开发者工具中会看一个vue的一栏,点击之后就可以看见当前页面vue对象的一些信息
STM32Cube和HAL库使用初体验-第5季第2部分
本季课程主要讲解STM32的全新开发方式:使用STM32CubeMX工具做图形化配置,自动生成初始化代码;添加各种中间件;使用HAL库和LL库来操作外设。结合朱老师物联网大讲堂专为nbiot物联网开发而设计的NB476开发板,本季课程能够让大家彻底掌握物联网时代以nbiot和低功耗STM32L4单片机为代表的典型开发模式,实战意义非常重要。 本课程是《朱有鹏老师单片机完全学习系列课程》第5季第2个课程,本部分以时钟和GPIO模块为案例来讲解STM32CubeMX工具加HAL库加MDK5这套开发体系的流程、技术细节,目标是让大家真正入门HAL库方式开发STM32单片机。后续再接着讲其他更复杂外设。
《UML面向对象需求分析与建模教程》 邹盛荣 主编 电子版 2016.01 .doc
PPT已在CSDN均可免费下载 《UML面向对象需求分析与建模教程》 邹盛荣 主编 电子版 2016.01 .doc 当当网上可购买纸质书: http://product.dangdang.com/23766413.html
发帖
非技术区
创建于2007-09-28

2.3w+

社区成员

Java 非技术区
申请成为版主
帖子事件
创建了帖子
2018-12-24 10:20
社区公告
暂无公告