Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/sql-server-2008/3.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
当我尝试提取存储有表情符号的nvarchar列值时,VB.net中的数据显示为'';_Vb.net_Sql Server 2008_Utf 8_Nvarchar - Fatal编程技术网

当我尝试提取存储有表情符号的nvarchar列值时,VB.net中的数据显示为'';

当我尝试提取存储有表情符号的nvarchar列值时,VB.net中的数据显示为'';,vb.net,sql-server-2008,utf-8,nvarchar,Vb.net,Sql Server 2008,Utf 8,Nvarchar,当我尝试使用VB.net从数据库中提取表情符号值时,表情符号显示为“??” 在存储过程中是否需要进行某种转换 Private Function DisplayEmoji(input As String) As String Dim output As New StringBuilder() Dim enumerator = StringInfo.GetTextElementEnumerator(input) While enumerator.MoveNext()

当我尝试使用VB.net从数据库中提取表情符号值时,表情符号显示为“??”

在存储过程中是否需要进行某种转换

Private Function DisplayEmoji(input As String) As String
    Dim output As New StringBuilder()
    Dim enumerator = StringInfo.GetTextElementEnumerator(input)
    While enumerator.MoveNext()
        Dim chunk As String = enumerator.GetTextElement()
        If Char.IsSurrogatePair(chunk, 0) Then
            output.Append("<img src=""" + "https://abs.twimg.com/emoji/v1/72x72/" + Char.ConvertToUtf32(chunk, 0).ToString("x") + ".png"" style=""height:1.5em; width:1.5em;"">")
        Else
            output.Append(chunk)
        End If
    End While
    Return output.ToString()
End Function
插入数据库或图像

Dim strQuery As String = "insert into tblFiles(Name, ContentType, Data) values (@Name, @ContentType, @Data)"
Dim cmd As SqlCommand = New SqlCommand(strQuery)
cmd.Parameters.Add("@Name", SqlDbType.VarChar).Value = filename
cmd.Parameters.Add("@ContentType", SqlDbType.VarChar).Value = "image/png"
cmd.Parameters.Add("@Data", SqlDbType.Binary).Value = bytes
InsertUpdateData(cmd)
插入更新数据

Public Function InsertUpdateData(ByVal cmd As SqlCommand) As Boolean
    Dim strConnString As String = System.Configuration.
    ConfigurationManager.ConnectionStrings("conString").ConnectionString
    Dim con As New SqlConnection(strConnString)
    cmd.CommandType = CommandType.Text
    cmd.Connection = con
    Try
      con.Open()
      cmd.ExecuteNonQuery()
      Return True
    Catch ex As Exception
      Response.Write(ex.Message)
      Return False
    Finally
      con.Close()
      con.Dispose()
    End Try
End Function

您正在哪个版本的Windows上测试此功能?Windows7不完全支持表情符号。要在该系统上获得基本支持,您需要使用包含表情符号“字符”的字体,如Segoe UI符号字体。通过使用图像,您需要记住有关可访问性的信息,并添加一些指示每个图像内容的alt文本。
Public Function InsertUpdateData(ByVal cmd As SqlCommand) As Boolean
    Dim strConnString As String = System.Configuration.
    ConfigurationManager.ConnectionStrings("conString").ConnectionString
    Dim con As New SqlConnection(strConnString)
    cmd.CommandType = CommandType.Text
    cmd.Connection = con
    Try
      con.Open()
      cmd.ExecuteNonQuery()
      Return True
    Catch ex As Exception
      Response.Write(ex.Message)
      Return False
    Finally
      con.Close()
      con.Dispose()
    End Try
End Function