这个问题无人能解???? http://topic.csdn.net/u/20101230/17/0dfd89b1-7800-47d1-ba86-a19dc41fd3d4.html?74859这个问题怎么没有人能解决吗郁闷了。 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 import java.io.File;import java.io.RandomAccessFile;import java.nio.channels.FileChannel;import java.nio.channels.FileLock;import java.nio.channels.OverlappingFileLockException;import java.util.RandomAccess;import javax.swing.JOptionPane;public class A1 {private FileChannel channel;private FileLock lock;private File file;public A1(String lockFileName) { file = new File(lockFileName);}public boolean isAppActive() { try { channel = new RandomAccessFile(file, "rw").getChannel(); try { lock = channel.tryLock(); } catch (OverlappingFileLockException e) { closeLock(); return true; } if (lock == null) { closeLock(); return true; } Runtime.getRuntime().addShutdownHook(new Thread() { public void run() { closeLock(); deleteFile(); } }); return false; } catch (Exception e) { closeLock(); return true; }}protected void deleteFile() { try { file.delete(); } catch (Exception e) { }}private void closeLock() { try { lock.release(); } catch (Exception e) { } try { channel.close(); } catch (Exception e) { }}public static void main(String[] args) { A1 a = new A1(".lock"); if (a.isAppActive() == true) JOptionPane.showMessageDialog(null, "已有一个程序在运行,程序退出"); try { Thread.sleep(10000); } catch (InterruptedException e) { // TODO Auto-generated catch block e.printStackTrace(); }}} 类似CSDN的引用回复功能 swt中可不可以像vb一样通过拖拽控件来编写界面 有没有Jakarta Commons API可以下载到? 高分求verycd的注册序列号 有个cvs问题请教 能否使用代码实现FTP连接远程服务器自动下载文件? 急! 环境变量问题,请大家多帮忙 在jbuilder7下面如何运行??????????????在线等待 请教volatile关键字的用法!!! timer怎么用呀. 用什么工具把class文件的类加密成a,b,c,d这样? 读文件的问题
import java.io.File;
import java.io.RandomAccessFile;
import java.nio.channels.FileChannel;
import java.nio.channels.FileLock;
import java.nio.channels.OverlappingFileLockException;
import java.util.RandomAccess;
import javax.swing.JOptionPane;public class A1 {private FileChannel channel;private FileLock lock;private File file;public A1(String lockFileName) {
file = new File(lockFileName);
}public boolean isAppActive() {
try {
channel = new RandomAccessFile(file, "rw").getChannel();
try {
lock = channel.tryLock(); } catch (OverlappingFileLockException e) {
closeLock();
return true;
}
if (lock == null) {
closeLock();
return true;
}
Runtime.getRuntime().addShutdownHook(new Thread() {
public void run() {
closeLock();
deleteFile();
}
});
return false;
} catch (Exception e) {
closeLock();
return true;
}
}protected void deleteFile() {
try {
file.delete();
} catch (Exception e) { }}private void closeLock() {
try {
lock.release();
} catch (Exception e) { } try {
channel.close();
} catch (Exception e) { }}public static void main(String[] args) {
A1 a = new A1(".lock");
if (a.isAppActive() == true)
JOptionPane.showMessageDialog(null, "已有一个程序在运行,程序退出"); try {
Thread.sleep(10000);
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}}}