我有數據庫表:試圖解碼數據(出口阿布斯到MySQL)
DROP TABLE translation_en_lt;
CREATE TABLE translation_en_lt (
id INTEGER,
lt_translation WIDEMEMO BLOBBlockSize 102400 BLOBCompressionAlgorithm ZLIB BLOBCompressionMode 9
);
其用AbsManager(絕對數據庫管理器,德爾福)產生
。它似乎已經過時了,而且語法對於當前的MySQL是無效的。然後,我有這個數據錄入:
INSERT INTO translation_en_lt (lt_translation) values (MimeToBin('cABhAHMAaQBzAGw='));
此行的值,如AbsManager正確顯示,是pasislinkti
。但是,base64_decode('cABhAHMAaQBzAGw=')
返回p�a�s�i�s�l
[base64_encode('pasislinkti')
返回cGFzaXNsaW5rdGk=
]。
我如何從MimeToBin('cABhAHMAaQBzAGw=')
獲得'pasislinkti'?它與編碼有什麼關係,zlib(WIDEMEMO BLOBBlockSize 102400 BLOBCompressionAlgorithm ZLIB BLOBCompressionMode 9
)?
我評論說:
14:24 VoVo64:傢伙:看起來好像 base64編碼的數據實際上是UCS-2 小端。解碼 cABhAHMAaQBzAGw =以HEX結果在70 00 61 00 73 00 69 00 73 00 6C
但是我已經嘗試iconv('UTF-16', 'UTF-8', base64_decode('cABhAHMAaQBzAGw='))
這導致:
Notice: iconv(): Detected an incomplete multibyte character in input string in /var/www/ssl/pp.php on line 2 pasis
我也曾嘗試:mb_convert_encoding($u, 'UCS-2LE', 'UTF-8'), mb_convert_encoding($u, 'UCS-2', 'UTF-8')
;沒有工作。