請。你能幫我如何將IP地址的整數值轉換為標準IP地址嗎?
A 得到整數值
tmpWifiServiceNative:= TAndroidHelper.Activity.getSystemService(TJContext.JavaClass.WIFI_SERVICE);
tmpWifiManager:= TJWifiManager.Wrap((tmpWifiServiceNative as ILocalObject).GetObjectID);
tmpWifiIPAddress:= tmpWifiManager.getDhcpInfo.ipAddress //This returns integer value
uj5u.com熱心網友回復:
只需使用此功能:
uses
Androidapi.Helpers,
Androidapi.JNIBridge,
Androidapi.JNI.Java.Net,
Androidapi.JNI.JavaTypes;
function ConvertIntegerIPAddressToString(AIntegerIPAddress: Integer): string;
var
IPAddress: Integer;
SystemByte: TJavaArray<Byte>;
InetAddress: JInetAddress;
begin
if (TJByteOrder.JavaClass.nativeOrder.equals(TJByteOrder.JavaClass._GetLITTLE_ENDIAN)) then
IPAddress:= TJInteger.JavaClass.reverseBytes(AIntegerIPAddress)
else
IPAddress:= AIntegerIPAddress;
SystemByte:= TJBigInteger.JavaClass.valueOf(IPAddress).toByteArray;
try
InetAddress:= TJInetAddress.JavaClass.getByAddress(SystemByte);
Result:= JStringToString(InetAddress.getHostAddress);
except
Result:= 'Convert error';
end;
end;
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/460944.html
上一篇:{$WARNDUPLICATE_CTOR_DTOROFF}從Dpk檔案中洗掉
下一篇:未能初始化SUSIAPIdll
