比如,我定义了一个叔祖
dim aa(3) as byte
dim i as integer
for i=0 to 3
aa(i)=i
next i
给数组各元素付了初值,我现在定义一个字符串
dim a4 as string *4
我怎么把数组各元素的值转换成a4的值呢,
谢谢
要是我再把a4的值放到一个新的数组里,比如说a(3)
dim a(3) as byte,
那我有该怎么处理呢,
谢谢各位大侠帮忙,谢谢哦,谢谢
因为我要在WORD 的VARIABLES 中保存这些数组,但是不支持保存数组,所以只好把数组变成STRING变量,我用下面的函数进行转化
public function StringToArray(str as string) as byte()
dim i as integer
redim StringToArray(len(i))
for i=1 to len(str)
StringToArray(i)=mid(str,i,1)
next
end function
public function ArrayToString(arr as byte()) as string
dim i as integer
ArrayToString=space(ubound(arr))
for i=1 to ubound(arr)
mid(ArrayToString,i,1)=arr(i)
next
end function
我用了上面的两个函数进行转换,
但是如果我的数组元素比如说为167,7,246,227,189....
讲过两个函数转换后变成了 1, 7,2, 2, 1,
函数只转换了最高位的数字,而舍弃了,后两位。。
怎么解决,谢谢各位帮忙!/谢谢
dim aa(3) as byte
dim i as integer
for i=0 to 3
aa(i)=i
next i
给数组各元素付了初值,我现在定义一个字符串
dim a4 as string *4
我怎么把数组各元素的值转换成a4的值呢,
谢谢
要是我再把a4的值放到一个新的数组里,比如说a(3)
dim a(3) as byte,
那我有该怎么处理呢,
谢谢各位大侠帮忙,谢谢哦,谢谢
因为我要在WORD 的VARIABLES 中保存这些数组,但是不支持保存数组,所以只好把数组变成STRING变量,我用下面的函数进行转化
public function StringToArray(str as string) as byte()
dim i as integer
redim StringToArray(len(i))
for i=1 to len(str)
StringToArray(i)=mid(str,i,1)
next
end function
public function ArrayToString(arr as byte()) as string
dim i as integer
ArrayToString=space(ubound(arr))
for i=1 to ubound(arr)
mid(ArrayToString,i,1)=arr(i)
next
end function
我用了上面的两个函数进行转换,
但是如果我的数组元素比如说为167,7,246,227,189....
讲过两个函数转换后变成了 1, 7,2, 2, 1,
函数只转换了最高位的数字,而舍弃了,后两位。。
怎么解决,谢谢各位帮忙!/谢谢
解决方案 »
- Access数据库如何合并?
- 如何用sql语言检索年龄分布
- 我在用CommonDialog控件时遇到个问题:当窗口打开时,选择的文件被列在文本框中,那么如何保证在文本框中的内容不被修改,请指点
- 请问一个COMBO的一个问题?(在线等待,马上结分)
- DTPicker心口不一
- 如何更新数据库?急用!
- 在VB中如何判断A驱中的软盘未格式化谢谢
- 各位:我开发了一个物资管理的程序,想找一个比较漂亮切较合适的图片做主菜单,盼各位热情提供,来者有礼!!
- 请教:VB如何能捕获系统的消息?
- 用VB打开EXCEL软件时,excel里面的加载项功能不显示也不启动了,怎么办,求大神
- 我用data控件连接Access数据库的 想把Data1.Recordset记录集中name字段名的内容装载到Listbox控件里头显示 但是运行之后却出现"加载DLL错
- 如何用VB编写标准DLL?
你的目的是:
Byte -> String -> Byte
则:
Dim a(3) as byte //Source Byte
Dim str(3) as string //String
Dim b(3) as byte //Destination Byte
Private Sub ToString()
for i=0 to 3
str(i)=cstr(a(i))
next
End SubPrivate Sub ToByte()
for i=0 to 3
b(i)=cbyte(str(i))
next
End Sub这样不行了吗??哈哈,不要想得太复杂哦~~~
dim aa(3) as byte
dim i as integer
for i=0 to 3
aa(i)=i
next i
dim a4 as string
a4=StrConv(aa, vbUnicode)'Byte to Stringaa=StrConv(a4,vbFromUnicode)'String to Byte
讲过两个函数转换后变成了 1, 7,2, 2, 1,
函数只转换了最高位的数字,而舍弃了,后两位。。
原因是::ArrayToString=space(ubound(arr))
space(n) 函数是产生n个空格的字符串,也就是数组中有几个元素就会产生几个空格,只能放一位数字
http://community.csdn.net/Expert/topic/3878/3878218.xml?temp=.3738062
arraytostring = arr(i)
Picture1.Print arraytostring
arraytostring = ""
Next i
第二个过程稍微改动一下,试试