我正在尝试将一些用JScript编写的函数转换为VB.NET(我将一个经典的ASP页面移植到ASP.NET)并且遇到问题,因为我对JScript不是很熟悉。我在VB.NET中正确转换函数声明时遇到问题。在我转换的代码中,VS2008给出了一个错误,说“无法在类型标识符中指定数组边界”。我不知道如何修改我的函数声明来返回一个数组,但是也接受一个数组作为输入,就像JScript声明那样。有任何想法吗?我接近这个错误吗?
提前致谢。
以下是原始JScript函数之一:
function binl2byt(binarray)
{
var hex_tab = "0123456789abcdef";
var bytarray = new Array(binarray.length * 4);
var str = "";
for(var i = 0; i < binarray.length * 4; i++)
{
bytarray[i] = (binarray[i>>2] >> ((i%4)*8+4) & 0xF) << 4 | binarray[i>>2] >> ((i%4)*8) & 0xF;
}
return bytarray;
}
到目前为止,这是我在VB.NET中的内容:
Public Function binl2byt() As Array(byval binarray as array)
Dim hex_tab As String = "0123456789abcdef"
Dim bytarray() As Byte
Dim str As String = ""
For I As Integer = 0 To (bytarray.Length * 4) Step 1
bytarray(I) = ((binarray(I >> 2) >> ((I Mod (4)) * 8 + 4) & Oxf) << 4) Or (binarray(I >> 2) >> ((I Mod (4) * 8) & OxF))
Next
Return bytarray
End Function
答案 0 :(得分:1)
不需要这个功能,它已经存在于.NET中。
BitConverter.ToString(Bytes);
其中Bytes是您的字节数组。