我正在尋找一種方式來獲得在Java應用程序的唯一文件ID,並跨越這來了:使用Java在Windows中獲取唯一的文件ID?
Unique file identifier in windows
現在,我試圖通過阿什利亨德森本人(即問一個提供答案問題),並在C#中工作得很好。但我需要在Java中這樣做,才能使應用程序跨平臺工作。
有什麼辦法來港這對Java或得到了相同的ID一些其他的方式?
編輯:
我幾乎得到了它現在的工作,利用EEE解決方案,只有我需要它是在圖書館,當我編譯爲一個庫,我得到一個錯誤,即使一切在包含所有內容的測試應用程序中正常工作。但我嘗試導入(無編譯器錯誤)一個單獨的圖書館中,我得到這個運行時錯誤:
debug:
Exception in thread "main" java.lang.NoClassDefFoundError: com/sun/jna/Structure
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClass(ClassLoader.java:791)
at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)
at java.net.URLClassLoader.defineClass(URLClassLoader.java:449)
at java.net.URLClassLoader.access$100(URLClassLoader.java:71)
at java.net.URLClassLoader$1.run(URLClassLoader.java:361)
at java.net.URLClassLoader$1.run(URLClassLoader.java:355)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:354)
at java.lang.ClassLoader.loadClass(ClassLoader.java:423)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308)
at java.lang.ClassLoader.loadClass(ClassLoader.java:356)
at winfileid.FileId.getFileId(FileId.java:37)
at testfileid.TestFileId.main(TestFileId.java:19)
Caused by: java.lang.ClassNotFoundException: com.sun.jna.Structure
at java.net.URLClassLoader$1.run(URLClassLoader.java:366)
at java.net.URLClassLoader$1.run(URLClassLoader.java:355)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:354)
at java.lang.ClassLoader.loadClass(ClassLoader.java:423)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308)
at java.lang.ClassLoader.loadClass(ClassLoader.java:356)
... 14 more
Java Result: 1
BUILD SUCCESSFUL (total time: 0 seconds)
我已經包括在庫中jna.jar和platform.jar當我編譯它...請再次注意,我對Java很新,但是我做錯了什麼?
我懷疑你將不得不使用JNI來獲取它。無論如何,你爲什麼要這個信息? – jontro
什麼是用例 - 爲什麼你需要唯一的ID? – aishwarya
用例是在文件移動或重命名時跟蹤文件,以保留來自其他文件的鏈接。 – Anders