2010-04-21 48 views
0

我只是想将一段PHP代码转换为C#,所以我需要它等同。是否有用于C#的任何库,它具有相当于PHP中的“解压缩”和什么是“解压缩”

解包真的做什么?我对这个功能很感兴趣。

+3

您是否阅读过有关PHP打包和解包的文档?如果您不明白本文档中的某些内容,请更具体一些。 http://php.net/manual/en/function.unpack.php http://www.php.net/manual/en/function.pack.php – Macmade 2010-04-21 08:54:33

回答

1

解包根据您告诉解析为的数据类型读取二进制数据并返回数组中的值。

我能想到的最接近的东西是C(++)/ C#中的struct,它用来自二进制数据的信息填充struct的成员。 C风格语言中的结构就像一个对象,但没有方法。

我现在想不出有什么好的例子来说明如何将数据读入结构中,但那是因为我对C或C++或C#没有那么好。尝试查看this的示例,了解如何将数据读入结构...或一如既往... google it

+1

下面是C的实现,http://asgaard.homelinux .org/svn/rotekopp/pickle.c,你可以称它为depickle(buf,“SLS”,&mystruct.foo,&mystruct.bar,&mystruct.othherfoo);(尽管目前只支持整数) – nos 2010-04-21 09:25:42

+0

谢谢那@nos。 – 2010-04-22 04:31:47

+1

我认为使用带指针的stuct要容易得多。 – 2010-04-22 06:39:27

1
Public Shared Function unpack(str As String) As String 

    Dim x As Integer 
    Dim rstStr As String = "" 
    For x = 0 To str.Length - 1 
     rstStr &= Convert.ToString(Asc(str.Substring(x, 1)), 16) 
    Next 

    Return rstStr 
End Function