pte*_*oid 5 sql t-sql sql-server sql-server-2008-r2
我有一个表存储压缩的 GZip 文件的内容。不确定原始信息是 XML 还是 CSV 还是什么。我无权访问原件。PulledContent 列是 varbinary,看起来像这样0x1F8B08000000000004006553C18E9B3010BD57EA3F706C0F2B63...
如何将这些信息转换为人类可读的内容?
我认为解决方案可能在这里:varbinary to string on SQL Server。
但是当我尝试这个时:SELECT CONVERT(VARCHAR(1000), PulledContent, 2);
它只是给了我一串略有不同的数字和字母,如下所示1F8B08000000000004006553C18E9B3010BD57EA3F70...
我缺少什么?
从“PulledContent”列返回的数据采用二进制 GZip 压缩格式。为了将此二进制数据转换为人类可读的格式,您将需要执行以下任务。
1) 使用适当的库解压缩二进制数据。如果您在 Windows 环境中,您可以使用 .net 类GZipStream来执行此任务。
2) 将二进制数据转换为字符串。您可以使用 .net Encoding 类来完成此任务。
string data = Encoding.Default.GetString(bytes);
Run Code Online (Sandbox Code Playgroud)
享受!