RT 有没有人写过类似的程序,给点思路,最好能记录下从电脑中拷了什么文件到U盘中。

解决方案 »

  1.   

    以前有人问过吧 jUSB API
    JSR-80 API (javax.usb)用以上2个操作吧
      

  2.   

    可能分配的盘符,不外乎那么20来个字母。而且,一般都是依序分配的。 取巧点的方法是:U盘的盘符是原系统中不存在的盘符(如果不考虑增减硬盘的情况),所以,在U盘未插前记录一下当前盘符,然后在需要检测的程序段里去读一下记录盘符之后的盘符是否有文件,就知道是否存在U盘了。 
      

  3.   

    按照3楼的方法,我用了JSR-80 API (javax.usb)这个包写了如下代码:
    package jusb;
    import javax.usb.*;import java.util.List;
    public class TraverseUSB { /**
     * @param args
     * @throws UsbException 
     * @throws SecurityException 
     */
    public static void main(String[] args) throws SecurityException, UsbException {
    UsbServices services  = UsbHostManager.getUsbServices();
    UsbHub rootHub = services.getRootUsbHub();
    }

    public static void traverse(UsbDevice device){
    if(device.isUsbHub()){
    List attachedDevices = ((UsbHub) device).getAttachedUsbDevices();
    for (int i=0; i<attachedDevices.size(); i++){
    traverse((UsbDevice)attachedDevices.get(i));
    }
    }else{
    System.out.print("This is a USB function, not a hub");
    }
    }
    }
    这个程序递归地遍历 USB 系统上的所有 USB hub 并找出连接到主机计算机上的所有 USB 设备
    为什么总是报错,错误是
    Exception in thread "main" javax.usb.UsbException: Properties file javax.usb.properties not found.
      

  4.   

    javax.usb.properties 所在的目录加到classpath。
      

  5.   

    我在myEclipse中已经导入了jsr80包,javax.usb.properties不是应该在包里嘛?但是我没有找到,会不是缺少文件呀?
      

  6.   

    楼主写好后发我一份,我也需要谢谢[email protected]
      

  7.   

    又查了下资料,好像jsr80只能在Linux 平台中应用,装个linux虚拟机再试试吧。
      

  8.   

    期待中,期待楼主整个完整的,楼主写好后发我一份,我也需要谢谢[email protected]
      

  9.   

    http://hi.baidu.com/wzwahl36/blog/item/b37f90d001ceee9da1ec9c5e.html我昨天刚做了一个,发到blog了!
    可以see see!
      

  10.   

    有什么其他需求和问题,说一说啊,邮箱联系我吧[email protected]