-
vb6源码 ymodem_任意字符的ASCII码转换工具,基于VB6的源代码VB字符串处理源码下载...
2021-01-14 15:08:52内容索引:VB源码,字符措置惩罚,ASCII,字符转换任意字符的ASCII码转换工具,鉴于VB6的源代码,能够把任意字符(数字、字母、汉字)转化成ascii码,也能够把ascii码还原成最初的字符。转化后的的结果(注:每一个字符之间...内容索引:VB源码,字符措置惩罚,ASCII,字符转换
任意字符的ASCII码转换工具,鉴于VB6的源代码,能够把任意字符(数字、字母、汉字)转化成ascii码,也能够把ascii码还原成最初的字符。转化后的的结果(注:每一个字符之间用“/”间离隔)。
运用说明:一共三个大文本框,你也能够在第二个文本框输入ASCII码,点击还原后会还原回原来的内容,注意填写格式:/1/2/3/4
原理:举个例子,用asc("你")把“你”转化成ASCII码的值为:-15133 , 用chr("-15133")把ASCII码值还原成“你”
Mid("hello", 5, 1),这个意思是:取hello中的值,5代表从第五个起头取,1代表取的值的长度。
任意字符的ASCII码转换工具,鉴于VB6的源代码 (1 folders, 0 files, 0 bytes, 11.94 KB in total.)
hur.cn (1 folders, 0 files, 0 bytes, 11.94 KB in total.)
ASCII转换 (0 folders, 6 files, 11.94 KB, 11.94 KB in total.)
ASCIIICO.ico 3.19 KB
Form1.frm 4.64 KB
Form1.frx 3.20 KB
MSSCCPRJ.SCC 190 bytes
工程1.vbp 703 bytes
工程1.vbw 49 bytes
-
VB6处理UTF8字符串问题
2014-11-27 21:45:55我想把一个字符串写入XML文件,默认编码是UTF-8格式的,当字符串中有斜杠"/"与中文字符紧挨出现的时候,存储的文件这个地方就是乱码。比如写入“测/试/行",就显示乱码,写入“/测试行/”则显示"/测试衿",写入纯... -
VB语言自动化处理字符串函数
2018-08-05 13:54:48'定义一个函数,把业务状况表的数据加载到字典里 Public Function AddDictionary(OriginalDictionary) Dim Path, CurrentWorkBook, ... Dim str1, str2, str3, str4, str5, str6 Dim n n = 10 ...'定义一个函数,把业务状况表的数据加载到字典里
Public Function AddDictionary(OriginalDictionary)
Dim Path, CurrentWorkBook, CurrentWorkSheet, CurrentName
Dim str1, str2, str3, str4, str5, str6
Dim n
n = 10
'打开名称里含有业务状况表的表格
Path = ThisWorkbook.Path & "\*业务状况表*"
'Dir函数返回路径下的文件名称,再次调用自动查找下一个符合条件的文件
CurrentName = Dir(Path)
Set CurrentWorkBook = Workbooks.Open(ThisWorkbook.Path & "\" & CurrentName)
Set CurrentWorkSheet = CurrentWorkBook.Worksheets(1)
'VB字典的定义和应用!
Set OriginalDictionary = CreateObject("Scripting.Dictionary")
While CurrentWorkSheet.Cells(n, 1) <> ""
str1 = "BD" & CurrentWorkSheet.Cells(n, 1)
str2 = "BC" & CurrentWorkSheet.Cells(n, 1)
str3 = "MD" & CurrentWorkSheet.Cells(n, 1)
str4 = "MC" & CurrentWorkSheet.Cells(n, 1)
str5 = "ED" & CurrentWorkSheet.Cells(n, 1)
str6 = "EC" & CurrentWorkSheet.Cells(n, 1)
OriginalDictionary.Add str1, CurrentWorkSheet.Cells(n, 3).Value
OriginalDictionary.Add str2, CurrentWorkSheet.Cells(n, 4).Value
OriginalDictionary.Add str3, CurrentWorkSheet.Cells(n, 5).Value
OriginalDictionary.Add str4, CurrentWorkSheet.Cells(n, 6).Value
OriginalDictionary.Add str5, CurrentWorkSheet.Cells(n, 7).Value
OriginalDictionary.Add str6, CurrentWorkSheet.Cells(n, 8).Value
n = n + 1
Wend
'关闭业务状况表
CurrentWorkBook.Close
End Function
'定义一个函数,将基础项目定义的公式依逗号拆分
Public Function SplitString(m, l, CurrentWorkBook, ModelWorkSheet, CurrentWorkSheet, Dictionary, ThisWorkbook)
Dim a, b, c, d, SumNumber, SubNumber
Dim Crr, x, y, h, k 'h表示行次所在的列,k表示基础定义所在的列
a = 1
x = 1
y = m
SumNumber = 0
SubNumber = 0
'找出行次和基础定义所在的列
Do While x < 12
If Trim(ModelWorkSheet.Cells(l, x)) = "行次" Then
h = x
End If
'基础项目定义的列开始!!!!!!!!!!!!!!!!!!
If Trim(ModelWorkSheet.Cells(l, x)) = "基础项目定义" Then
k = x
Do While ModelWorkSheet.Cells(m, h) <> ""
'k的值小于6和大于6从报表取值的列是不同的,因为加了基础项目定义的列
If k < 6 Then
ModelWorkSheet.Cells(m, k + 1) = CurrentWorkSheet.Cells(m, k + 1)
Else
ModelWorkSheet.Cells(m, k + 1) = CurrentWorkSheet.Cells(m, k)
End If
'基础定义的项拆分开始!
If Left(ModelWorkSheet.Cells(m, k), 2) = "ED" Or Left(ModelWorkSheet.Cells(m, k), 2) = "EC" Then
'把基础项目定义公式依据逗号拆分成一个一个的数组
Crr = Split(ModelWorkSheet.Cells(m, k), ",")
'对于每一个数组进行分析:+的部分放在SumNumber里,-的部分放在SubNumber里
For i = 0 To UBound(Crr)
'首先分析+的部分,a表示一个科目号码开始的位置(默认1),b表示结束的位置
Do
'INstr函数找出字符出现的第一个位置
b = InStr(a, Crr(i), "+")
If b = 0 Then
If 0 = InStr(Crr(i), "-") Then
b = Len(Crr(i)) + 1
Else
b = InStr(Crr(i), "-")
End If
SumNumber = Dictionary.Item(Mid(Crr(i), a, b - a)) + SumNumber
Exit Do
Else
SumNumber = Dictionary.Item(Mid(Crr(i), a, b - a)) + SumNumber
a = b + 1
End If
Loop While b <> 0
'然后分析-的部分,a表示一个科目号码开始的位置,d表示结束的位置
If InStr(Crr(i), "-") <> 0 Then
c = InStr(Crr(i), "-") + 1
Do
d = InStr(c, Crr(i), "-")
If d = 0 Then
d = Len(Crr(i)) + 1
SubNumber = SubNumber + Dictionary.Item(Mid(Crr(i), c, d - c))
Exit Do
Else
SubNumber = SubNumber + Dictionary.Item(Mid(Crr(i), c, d - c))
c = d + 1
End If
Loop While d <> 0
End If
'判断是否是第一个数组,第一个数组直接SumNumber - SubNumber,后面的数组需要判断扎差
If i = 0 Then
If Trim(ModelWorkSheet.Cells(m, 1)) = "存放同业款项" Or Trim(ModelWorkSheet.Cells(m, 6)) = "同业及其他金融机构存放款项" Then
ModelWorkSheet.Cells(m, k + 2) = ModelWorkSheet.Cells(m, k + 2) + SumNumber - SubNumber
ModelWorkSheet.Cells(m, k + 2) = ModelWorkSheet.Cells(m, k + 2) - ThisWorkbook.Worksheets("报表检核页").Cells(11, 13)
Else
ModelWorkSheet.Cells(m, k + 2) = ModelWorkSheet.Cells(m, k + 2) + SumNumber - SubNumber
End If
Else
If SumNumber > SubNumber Then
ModelWorkSheet.Cells(m, k + 2) = ModelWorkSheet.Cells(m, k + 2) + SumNumber - SubNumber
End If
End If
'每一个数组分析完毕后都需要把a 、SumNumber、SubNumber重新赋值
a = 1
SumNumber = 0
SubNumber = 0
Next
'基础定义的项拆分完毕!
'计算公式的项赋值开始!
Else
If ModelWorkSheet.Cells(m, k) <> "" Then
ModelWorkSheet.Cells(m, k + 2).Formula = "=" & ModelWorkSheet.Cells(m, k)
End If
'计算公式的项赋值完毕!
End If
'判断报表值和计算的结果是否相等,不相等则标记颜色区分
If Round(Val(ModelWorkSheet.Cells(m, k + 1)), 2) <> Round(Val(ModelWorkSheet.Cells(m, k + 2)), 2) Then
ModelWorkSheet.Cells(m, k + 1).Interior.ColorIndex = 3
ModelWorkSheet.Cells(m, k + 2).Interior.ColorIndex = 3
End If
m = m + 1
Loop
'm的循环结束后需要把m重新赋值!
m = y
End If
'基础项目定义的列结束!!!!!!!!!!!!!!!!!!
x = x + 1
Loop
CurrentWorkBook.Close
End Function -
VB如何处理字符串(Left Mid Right和split函数)
2020-09-05 13:04:59将这个字符串1,0.378,"BV ",0.0054,37.075,106.891,0.755中的数字和字符串提取出来。 直接代码 Private Sub Form_Click() Dim s() As String Dim t() As String a = Text1.Text Print a b = Left(a, 7) c = Mid(a, 9...将这个字符串1,0.378,"BV ",0.0054,37.075,106.891,0.755中的数字和字符串提取出来。
直接代码
Private Sub Form_Click() Dim s() As String Dim t() As String a = Text1.Text Print a b = Left(a, 7) c = Mid(a, 9, 6) d = Right(a, 27) Print b Print c Print d s = Split(b, ",") t = Split(d, ",") For i = 0 To 1 Print s(i) Next i For i = 0 To 3 Print t(i) Next i End Sub
-
Delphi DLL 与VB6 传送字符串
2020-11-12 22:24:50由来 InnoSetup有一个重要功能就是调用外部DLL,它本身是...思路是这样的:VB6用Byref传送字符串,Delphi用Var p1: Pchar,接收字符串,在DLL中处理字符串,然后通过 Var p2: Pchar,返回给VB6; 要注意一是DLL接收了由来
InnoSetup有一个重要功能就是调用外部DLL,它本身是用Delphi写的,带的Script也基本上类同Delphi,因此,挂Delphi DLL比较好,只是自带的Sample太过简单。传值返值一般的计算功能调用还是比较简单,但传递字符串还是很不同。网上转了转,五花八门说啥的都有,我的解题可能不太一样。思路是这样的:VB6用Byref传送字符串,Delphi用Var p1: Pchar,接收字符串,在DLL中处理字符串,然后通过 Var p2: Pchar,返回给VB6; 要注意一是DLL接收了不要改变原来的内存地址或指针,即便在DLL做了很多处理,最后返时也只能是将处理过的内容考贝到原来的地址。二是本地处理后要有一块连续的内存将处理过的字符串放进去,再考贝给p2,于是呢,程序就写成下面的样子:
处理
Delphi程序DLL
Function BackString(var p1: PAnsichar; var p2: PAnsichar): Integer; stdcall;
var
s: string;
p: Pchar;
begin
s := 'abcdefg' + strPas(p1);
p := StrAlloc(255);
StrPcopy(p, s);
strPCopy(p2, p);
StrDispose(p);
BackString :=0;
end;VB6程序调用DLL
Declare Function BackString Lib "G:\MyDelphi2010\InstaDll\InstaDll.Dll" (ByRef a1 As String, ByRef a2 As String) As Long
......
Private Sub Command1_Click()
S1$ = "123456789012345678901234567890"
S2$ = String$(255, "a")
List1.Clear
r = BackString(S1$, S2$)
List1.AddItem (CStr(1) + " " + Trim(S2$))
End Sub注:VB6 做个FORM,上面放一个Command Button,再放一个ListBOx
结尾
在编程环境下运行,会在ListBox1上看到返回字符串 abcdefg1234567........,其中abcdefg是DLL加上去的、1234567......是VB6送给它的。字符串操作是借助于内存完成的,不管它怎么变,最后把整块内存的东西返回去就是了,否则很容易引发怪毛病,毕竟是在不同的开发环境约定下交互操作。
补充
如果VB6送整数和字符串,Delphi DLL可写为:
Function BackString1(intParam1: Integer; var p2: PAnsichar): Integer; stdcall;
var
s: string;
p: Pchar;
begin
s := 'abcdefg ' + IntToStr(intParam1) + ' abcdefg';
p := StrAlloc(255);
StrPcopy(p, s);
strPCopy(p2, p);
StrDispose(p);
BackString1 :=0;
end;VB6相应的写为
Declare Function BackString1 Lib "G:\MyDelphi2010\InstaDll\InstaDll.Dll" (ByVal a1 As Long, ByRef a2 As String) As Long
Delphi的Integer型在VB6里用Long型,用错了返回值由于溢出而成负数、返非所欲的。
CSDN用的不熟,加了粗体H3标记,嗯,挺好。还有图像、图表、公式挺多功能的,以后慢慢的努力丰富博文内容和表现形式。
-
VB编程资源大全(源码 字符串)
2007-10-17 22:16:391,strs.zip 实现字节数组, 同c中的字符数组一样好用(6KB) 2,modules.zip 字符串处理的12个例子(13KB) 3,strings.zip 字符串处理函数(4KB) 4,stringfuncs.zip 字符串处理函数(9KB) 5,search&... -
VB编程资源大全(英文源码 字符串)
2007-10-24 06:51:471,strs.zip 实现字节数组, 同c中的字符数组一样好用(6KB)<END><br>2,modules.zip 字符串处理的12个例子(13KB)<END><br>3,strings.zip 字符串处理函数(4KB)<END><br>4,stringfuncs.zip 字符串处理函数(9... -
字符串传送的TCPUDP读卡器、实时消费机VB开发示例微信扫码消费.rar
2019-06-12 09:32:05本示例为云消费机的源码示例,消费机使用UDP通讯协议,刷卡后设备将卡号、消费金额即时发送到服务器,服务器处理完后返发...此示例使用VB6开发,涉及winsock控件的使用、UDP协议的使用、微信支付、支付宝支付的使用。 -
VB串口通信源码210个
2013-10-15 11:32:27006、VB6的串口通信程序,还有crc校验 007、VB Modbus RTU源码,其中协议部分已生成DLL,可直接调用 008、VB.net开发的串口调试程序 009、VB.net实现串口编程,希望大家有用 010、VB版串口调试程序,包含VB源码及安装... -
VB6单片机编程中的汉字处理
2015-09-06 11:34:00在DOS时代,拥有一个华丽的汉字... 但是在许多工程控制和字符串处理的环境中,汉字字符的处理仍然有别于西文字符的处理,需要加以专门的考虑。 一、VB6对汉字处理的支持 对汉字处理,VB6主要是提供了一些输入法设... -
由于这个程序对Gif文件数据是使用字符串方式来处理的,所以可能会有错误。哪位如果干兴趣的可以把它改一下...
2009-10-07 00:05:55一个完全利用VB函数、Timer控件和Image控件而不利用任何其它控件实现的Gif动态图形显示的程序。由于这个程序对Gif文件数据是使用字符串方式来处理的,所以可能会有错误。哪位如果干兴趣的可以把它改一下。(6KB) -
字符串变量赋值时存储地址的变化
2018-05-28 22:57:18在VB6中,我们并不关心字符串的存储问题,因为系统已经为我们处理好了这个问题。先看看下面的代码:Option Explicit Private Declare Sub CopyMemory Lib "kernel32" Alias "RtlMoveMemory" ... -
各种编程语言用的字符串查找函数比较
2021-02-15 17:39:27VB6:用instr,母串在前,子串在后,返回值以1开始 javascript:用indexOf,母串在前(做为对象),子串在后(做为参数),返回值以0开始 MSSQL:用charindex,子串在前,母串在后,返回值以1开始 ORACLE:用... -
VB 用Fso函数处理带有问号的Unicode文件名
2012-12-31 19:52:05VB6 编写程序时,经常遇到文件名中含有Unicode字符的文件名,常规的Name语句,Open语句,甚至Windows 中API函数都无法处理这里的文件名,因为这些文件在VB String字符串中变成了?,而问句是无法处理的,找了很多... -
VB6.0 json操作与中文乱码处理
2021-01-09 22:51:43发送的是json格式字符串,接收到服务器返回的json字符串并处理。 VB6太老了,怎样处理json,是否有现成的第三方库呢?经过一番探索,找到了VBJSON这个库。 使用过程如下: 1. 下载VBJSON:... -
Excel催化剂开源第39波-json字符串解释的超能类库
2019-09-26 00:29:15对一般VBA开发群体来说,处理json、xml结构的数据源,在VB6的世界里,是一件非常不容易的事情,隐约记得当年自己从哪里找到了一个使用字典实现的json解释的函数,实在非常稀有。 在.Net的世界里,这些却变得如此简单... -
VB的Split()函数返回空格“ ”的处理方式
2021-01-12 23:48:26VB的Split()函数返回空格“ ”的处理方式 例如,字符串mArray 中分布着不均匀的空格“ ”,调用Split()函数返回的array<string>中,存在非期望的 ""元素。 mArray = "1,2, ,4, ,6,7, 8., 9 , 10, " 处理思路... -
VB6宏插件 1.3 Rev 63
2010-09-18 18:42:09其实如果不用这个插件,而是直接使用VB自带的插件向导也可以实现这个功能,只是比较麻烦: 比如您在开发过程中,需要对工程中的所有窗体进行某种统计(比如名称包含特定字符串的按钮的个数,位置,所在组件等信息) ... -
unity newtonsoft 反序列化报空_Excel催化剂开源第39波-json字符串解释超能类库Newtonsoft.Json...
2020-12-12 10:17:19对一般VBA开发群体来说,处理json、xml结构的数据源,在VB6的世界里,是一件非常不容易的事情,隐约记得当年自己从哪里找到了一个使用字典实现的json解释的函数,实在非常稀有。在.Net的世界里,这些却变得如此简单... -
Windows10下VB6.0开发——常用数值处理函数工具
2020-10-19 16:30:22前言:下面记录整理了VB中经常使用用于数据转换的工具函数。 1. 数值处理 1.1 取不大于n的最大整数... 将数值或者数值类型字符串强制转换为长整型数据用CLng,其中: 在处理小数部分时候,采用四舍五入法。但若小 -
正则表达式测试工具 for vb6
2011-01-15 13:41:00正则表达式测试工具,当然也可以做为一般数据处理工具。 ...接着就在下面输入正则表达式,点击下面按钮处理检索结果。...完全匹配:测试字符串是否和内容匹配,返回True或者False 检索结果:对表达式开始处理,输 -
VB6增强搜索插件 4.13.0.130
2010-09-18 18:32:49为了避免安装路径的差异问题,修改了make.bat,从注册表中提取VB6的路径 将热键设定及响应的功能提取到一个单独的HotkeyControl?项目中 引用新HotkeyControl?控件,并在本地添加一个代理类HotkeyProxy? 补充了类注释... -
VB_JSON.zip
2020-05-08 20:02:33JSON是一种有用且紧凑的格式,用于在基于浏览器的JavaScript客户端程序与基于VB6的数据服务器之间进行数据交换,以及用于在文本字段中存储结构化的元数据。它也可以用作有效的RPC传输协议,并且可以使用GZip很好地... -
基于VB6开发的轻量级数据库查询客户端工具(附源码和安装)
2012-08-19 08:32:59基于VB6自主研发的轻量级数据库查询客户端工具,启动速度较快,所占资源较小。 附源码,对初学数据库编程的童鞋有所裨益! 1、支持SQLServer、Oracle、Sybase、DB2数据库平台 2、单句执行:可以提交单一的SQL语句... -
vb/vb.net开发精粹(3)
2011-10-07 14:12:23请教VB6.0+数据库的问题!...这两个字符串 为什么无法链接到一起???? 去掉一位数组中包含的另一个数组的值 串口接受的数据如何处理?????????????? VB6 CELL控件的问题,CELL的 -
VB常用代码
2008-01-11 08:23:00用Mid$命令超速字符串添加操作大家都知道,&操作符的执行速度是相当慢的,特别是处理长字符串时。当必须重复地在同一变量上附加字符时,有一个基于Mid$命令的技巧可以使用。基本思路就是:预留一个足够长的空间存放... -
VB.NET初学者用例
2008-05-28 18:20:172. 字符串处理 4. 注册表访问 5. 程序调用技术 6. 文件访问 编程语句的规范编写,模块,类,过程,函数的创建与使用. 原文件有详细注释 确实是入门VB.NET语言的一个好东实例. 程序很小,但包含了很多东西,虽然都只是了解... -
VB 超强的API浏览器 (源代码)
2012-02-11 17:35:06VB 超强的API浏览器,带源码。 在VB.net、C#中, 使用 DllImport 属性调用 ...请自行计算出数组大小或用代码处理定长字符串的方式进行改写。 VB.net与C#中的类型(结构体)如果有数组那么这个类型不能声明为类。 -
VB案例:编码解码
2018-02-28 17:21:516、字符串处理 7、循环结构 三、工程结构 四、编码解码窗体 1、界面设计 2、事件处理代码 一、运行效果 可以打开文本文件,也可以直接粘贴文本: 单击5次【编码】按钮: 此时,单击5次【解码】按钮...