Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/powershell/11.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在Powershell中将表情符号UTF8转换为Unicode_Powershell_Unicode_Encoding_Utf 8_Emoji - Fatal编程技术网

在Powershell中将表情符号UTF8转换为Unicode

在Powershell中将表情符号UTF8转换为Unicode,powershell,unicode,encoding,utf-8,emoji,Powershell,Unicode,Encoding,Utf 8,Emoji,我需要使用powershell将数据持久化到数据库中。有时数据中会包含表情符号 DB:在DB方面,一切都应该很好。属性被设置为NVARCHAR,这使得持久化emojis成为可能。当我手动插入数据时,在我查询这些数据后显示表情符号(这是否回答了您的问题?“使用NVARCHAR(size)数据类型和前缀字符串literal加N:” powershell中的1个表情符号是2个utf16代理字符,因为它的代码对于16位来说太高 ”我的同事找到了这个问题的正确答案 要在MS SQL数据库中持久化emoj

我需要使用powershell将数据持久化到数据库中。有时数据中会包含表情符号


DB:在DB方面,一切都应该很好。属性被设置为NVARCHAR,这使得持久化emojis成为可能。当我手动插入数据时,在我查询这些数据后显示表情符号(这是否回答了您的问题?“使用NVARCHAR(size)数据类型和前缀字符串literal加N:”

powershell中的1个表情符号是2个utf16代理字符,因为它的代码对于16位来说太高


”我的同事找到了这个问题的正确答案

要在MS SQL数据库中持久化emojis,您需要将列声明为nvarchar(max)(max不一定),我已经这样做了

我试图像这样保存在PS脚本中硬编码的示例数据


@{description=“示例说明”从UTF8到Unicode的转换"是没有意义的-Unicode是代码点的抽象列表,UTF8是以二进制形式表示这些代码点的方法之一。可能发生的情况是双重编码,或者将二进制格式误解为不同的编码。感谢您的澄清。尽管如此,表情在powershe中以UTF-8表示LH.我想保留表情符号表示,而不是UTF8/Unicode值。不,它们不“在UTF-8中表示”,也没有“表情符号表示”这样的东西-数据库不是存储小图像,而是以某种二进制编码(可能是UTF-8或UTF-16)存储字符。您看到的是二进制表示被误解,并显示为胡言乱语。这听起来可能很迂腐,但更好地理解所涉及的概念将有助于您识别通知并解决您的问题。这是否回答了您的问题?