UUID和GUID问题

问题描述:

请不要将其标记为重复。我已经阅读了关于此主题的所有帖子,但无法解决我的问题。UUID和GUID问题

我在J2ME与特定的UUID蓝牙服务搜索的应用程序:

UUID[] uuidSet = { new UID("100000",true) }; 
int[] attrSet = {0x0100, 0x0003, 0x0004}; 
int transID = agent.searchServices(attrSet,uuidSet,remoteDevice,this); 

我在VB.NET使用32feet.NET库与特定创建一个新的蓝牙服务的桌面应用程序GUID。

Sub startBluetoothListener() 
    Dim lsnr As New BluetoothListener(MyConsts.MyServiceUuid, record) 
    lsnr.Start() 
    Dim conn As New BluetoothClient 
    Dim peerStream As Stream    
End Sub 

Class MyConsts 
Public Shared ReadOnly MyServiceUuid As Guid _ 
    = New Guid("{7dc53df5-703e-49b3-8670-b1c468f47f1f}") 
End Class 

现在根据规则,为了使GUID/UUID应该匹配都应该匹配。但是在.NET中,GUID表示为十六进制字符串,而在JAVA中则不同。我搜索了很多关于如何同步J2ME和.NET GUID/UUID但不能成功的。

我读过的J2ME实现UUID的来源,它只是似乎表明省略了括号和连字符,即使用:

new UUID("7dc53df5703e49b38670b1c468f47f1f", false) 

如果你使用真正的参数,它预计一个简短形式的UUID(即8个字符)

我原来的答复是基于J2SE实现,即:

不是一个字符串的UUID的构造:

UUID aUUID = UUID.fromString( “”)

其中字符串是:

7dc53df5-703e-49b3-8670-b1c468f47f1f

在UUID的情况下(即删除Guid字符串中的前导'{'和尾部'}')

+0

感谢您的回复。我认为你所说的UUID是来自J2SE中的java.util。我正在使用的是J2ME。 – knurdy 2011-06-10 16:38:48

+0

好的,我不完全熟悉j2me UUID类 - 基于http://jcs.mobile-utopia.com/jcs/7627_UUID.java上的源代码,您应该省略这些问题 – Petesh 2011-06-10 19:01:38