首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > JAVA > J2SE开发 >

USB接口监听解决思路

2012-03-04 
USB接口监听现在做项目要做这样一个功能当有U盘插到电脑上时,自己检查U盘里面是还有goods这个文件夹,如果

USB接口监听
现在做项目要做这样一个功能
当有U盘插到电脑上时,自己检查U盘里面是还有goods这个文件夹,如果有就自己把goods文件夹里面的内容拷入电脑C盘下的goods目录下,这个好像要用到事件,这个功能要怎么做,最好有代码哦,分一定会给。。。

[解决办法]
你肯定是学生,你肯定打算偷老师的资料。
鉴定完毕。
[解决办法]

探讨
你肯定是学生,你肯定打算偷老师的资料。
鉴定完毕。

[解决办法]
C/c++版块去问更好
[解决办法]
这个就是传说中的盗取数据的木马程序么.............
[解决办法]
这个用java也是要调用naive code,还不如直接用C/C++去实现。
[解决办法]
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
import java.text.SimpleDateFormat;
import java.util.Date;



public class USB extends Thread{


/**
* @param args
* @throws IOException
*/
public static void main(String[] args) throws IOException {
USB u=new USB();
u.start();

// System.out.println(bl);
}
/**把文件拷到指定目录下
* @param copy 要拷贝的文件
* @param paste 要粘帖的目录
* @return boolean 拷贝是否成功
* @throws IOException 

*/

public boolean tranFile(File copy,File paste) throws IOException{
// System.out.println(paste.isFile()+"123");
// System.out.println(copy.isFile()+"456");
if(!copy.isFile()||paste.isFile())
return false;
if(!paste.exists())
paste.mkdirs();
try{
String separator="";
separator=System.getProperties().getProperty("file.separator");
System.out.println(paste.getPath());
System.out.println(copy.getName());
System.out.println(separator);
InputStream in=new FileInputStream(copy);
OutputStream out=new FileOutputStream(paste.getPath()+separator+copy.getName());
byte b[]=new byte[1024];
while(in.read(b,0,1024)!=-1)
{
out.write(b);
}
in.close();
out.close();
}
catch(Exception e)
{
System.out.println("你输入paste目录有问题!");
return false;
}


return true;

}
/**
* 把文件夹拷到指定的文件夹下
* @param copy 要拷贝的文件夹
* @param paste 要粘帖的文件夹
* @return 是否拷贝成功*/
public boolean tran(File copy,File paste) throws IOException
{
if(copy.isFile()||paste.isFile())
return false;
try{
if(!paste.exists())
paste.mkdirs();
File filelist[]=copy.listFiles();
if(filelist.length==0)
return false;
else
{
for(int i=0;i<filelist.length;i++)
{
if(filelist[i].isFile())
tranFile(filelist[i],paste);
else
{
System.out.println(paste.getPath()+File.separator+filelist[i].getName()+"sdfklsdkjf");
tran(filelist[i],new File(paste.getPath()+File.separator+filelist[i].getName()));
}
}
}
}
catch(Exception e){
System.out.println("你输入的两个路径有问题!");
return false;

}

return true;
}
public void run(){
char c[]={'C','D','E','F','G','H','I','J','K','L','M','N'};
int sign[]={0,0,0,0,0,0,0,0,0,0,0,0};
for(int i=0;i<c.length;i++)
{
File f=new File(c[i]+":\\goods\\");
if(f.exists())
{
sign[i]=1;
}
else 
{
sign[i]=0;


}
}

while(true)
{
for(int i=0;i<c.length;i++)
{ try {
sleep(500);
System.out.println("优盘没有插入,等待中。。。");
} catch (InterruptedException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}
File f=new File(c[i]+":\\goods\\");
// System.out.println(f.getAbsolutePath());
if(f.exists()&&sign[i]==0)
{
File f_des=new File("C:\\goods\\");
try {
tran(f,f_des);
} catch (IOException e) {

e.printStackTrace();
}
sign[i]=1;
System.out.println("拷贝成功!");
}
if(!f.exists()&&sign[i]==1)
sign[i]=0;
}
}
}

}

热点排行