java 文件读写时 另一程序正在读写怎么办

我是用jxl读写excel ,此excel正在被我用office打开阅读,此时运行程序读写,我程序要怎么判断此excel正在被我用office打开?

java当中读和写是可以同时进行的,但限于同一个程序,相当于复制功能,你可以建立一个BufferedReader和BufferedWrite缓冲区,把读到的内容先放在缓冲区里,再进行操作,这样可以提高读写效率。
当java 文件读写时 另一程序正在读写,很有可能会发生程序运行冲突,终止。可以把这种情况当异常处理,直接抛出。
温馨提示:答案为网友推荐,仅供参考
第1个回答  推荐于2018-04-21
一种是继续尝试读N次后报错,
一种是及时提示用户稍后再操作。

楼下的,什么多线程不多线程?LZ的文档又不是被自己程序重复读写出现的问题。
这种情况,直接自己自定义一个EXCEPTION,然后在异常中处理了。本回答被提问者和网友采纳
第2个回答  2012-05-23
改用多线程实现啊,在读写的方法前面加个同步就行,就只能一个程序读写,读完其他线程才能操作。
第3个回答  2015-10-23
synchronized 给某个对象 变量 方法 加锁
第4个回答  2012-05-23
对啊。写成多线程呗。不过要做个线程的同步。比较麻烦。
相似回答