主题:byte数组 如何高效 转成string?
colordancer
[专家分:0] 发布于 2008-07-16 21:57:00
比如一个byte数组如下{12,12,34}
我想让它转成如下的string:121234
我目前的方法是循环该数组,然后累加到一个string上,但是效率太低
我的应用不允许这么低的效率
请问,有没有效率高的?
谢谢!
回复列表 (共10个回复)
沙发
我是大喊三 [专家分:3010] 发布于 2008-07-17 00:03:00
有什么好办法吗,VB也不允许直接读内存啊
板凳
colordancer [专家分:0] 发布于 2008-07-17 10:07:00
顶起,这个问题困扰我两天了
如果用函数转,都会转byte对应char,这个不是我需要的,我需要的正式byte本身的数字
3 楼
bcahzvip [专家分:6040] 发布于 2008-07-17 12:07:00
转成那样有什么意义吗?
4 楼
colordancer [专家分:0] 发布于 2008-07-17 12:28:00
回楼上的朋友:
我做的应用是:clean一个受病毒感染的文件
文件是用byte数组读取的,我先要匹配到感染文件中特定字符串,然后删除掉,再保存过去
所以我的步骤如下:
1·byte数组读文件
2·byte数组转成string:A
3·将要匹配的字符串转成byte数组的string:B
4·在A中正则表达式搜索B
5·匹配到,则在A中删除B
6·回写文件
请指教,谢谢
5 楼
tanchuhan [专家分:15140] 发布于 2008-07-17 13:14:00
字符串比较很慢的,还不如直接BYTE比较
6 楼
bcahzvip [专家分:6040] 发布于 2008-07-17 13:21:00
= =;在我的知识范围也就只能用C来减短一点循环而已。也可以用多线程来增加处理时间。
我纳闷的是怎么“再回写文件”
7 楼
colordancer [专家分:0] 发布于 2008-07-17 13:53:00
那楼上二位可否提供一个修改二进制文件(包含匹配字符串)的例子?
8 楼
artless [专家分:1490] 发布于 2008-07-17 18:05:00
再高效都没不转换高效。
9 楼
artless [专家分:1490] 发布于 2008-07-17 18:06:00
open
10 楼
colordancer [专家分:0] 发布于 2008-07-18 11:10:00
楼上的朋友有何高见?可否提供另外一种思路给我?
十分感谢
我来回复