高分求教java文件操作的问题!!

Meteor_kou 2003-08-28 03:36:40
我现在的项目用的是文件模拟数据库,所以要频繁的读取文件,这就涉及到文件加锁的问题。及不同进程不能同时对同一文件读和写。
1.在C++程序以只读方式打开一个文件时,java程序读写该文件是否出错,是否能得到出错的原因及该文件当前的状态。
2.java程序能否以独占的方式打开一个文件(及别的程序不能读写)。或者别的方式,主要是实现文件锁的功能。
另外介绍一下javaIO方面的参考书。谢了!!
...全文
66 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
cbhyk 2003-09-01
  • 打赏
  • 举报
回复
JNI
Meteor_kou 2003-09-01
  • 打赏
  • 举报
回复
???
Meteor_kou 2003-08-29
  • 打赏
  • 举报
回复
大家没有什么别的好方法了吗?有没有人做过类似的项目呀!
caiyi0903 2003-08-28
  • 打赏
  • 举报
回复
GZ
Meteor_kou 2003-08-28
  • 打赏
  • 举报
回复
可是项目用什么不是我说得算的,只能用1.3呀
javatech 2003-08-28
  • 打赏
  • 举报
回复
呵呵,java.nio在JDK1.4才有的!
sgdb 2003-08-28
  • 打赏
  • 举报
回复
1.3里没有java.nio的,下1.4吧

File f=new File("11.txt");
f.canRead();//如果文件允许读则返回true
f.canWrite();//如果文件允许写则返回true
Meteor_kou 2003-08-28
  • 打赏
  • 举报
回复
我用的是是java1.3好像API里没有java.nio这个包呀,我试试看吧。java可以得到文件的状态,怎么得到文件状态,能不能再具体点!谢了
wangyanqiu 2003-08-28
  • 打赏
  • 举报
回复


RandomAccessFile raf=new RandomAccessFile("","rw");
FileChannel channel =raf.getChannel();

FileLock lock=channel.lock();
老土豆T 2003-08-28
  • 打赏
  • 举报
回复
import java.io.*;
import java.nio.*;
import java.nio.channels.*;

public class Locking {
public static void main(String arsg[])
throws IOException {
RandomAccessFile raf =
new RandomAccessFile("junk.dat", "rw");
FileChannel channel = raf.getChannel();
FileLock lock = channel.lock();
try {
System.out.println("Got lock!!!");
System.out.println("Press ENTER to continue");
System.in.read(new byte[10]);
} finally {
lock.release();
}
}
}
sgdb 2003-08-28
  • 打赏
  • 举报
回复
1.java可以得到文件的状态

2.Filelock,可以禁止别人存取文件

具体的你去查查api吧
dmhorse 2003-08-28
  • 打赏
  • 举报
回复
我也碰到同样问题
RandomAccessFile("path","r")
r denote reading file only.

62,614

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧