【发布时间】:2010-07-13 14:35:17
【问题描述】:
我正在尝试将一些用 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
【问题讨论】:
-
另外,据您所知,要将数组传入和传出函数,您可以将 Public Function x(b() as Byte) as Byte() 或任何数据类型。
标签: vb.net md5 javascript