vb6 - 如何在服务器上提取从客户端获取的数据?
问题描述
我正在开发 vb6 并成功使用 winshock 组件创建服务器项目。客户端(生化分析仪软件)在测试执行后连接并发送数据到服务器。它以字符串的形式出现,即
MSH|^~\&|Factory|Chemistry Analyzer|||20210430190330||ORU^R01|9|P|2.3.1||||0||ASCII|||
PID|9||||shitalPL||||||||||||||||||||||||||
OBR|1||11|Factory^Chemistry Analyzer|N||20210430183639||||||||Serum|||||||||||||||||||||||||||||||||
OBX|1|NM|GLU|GLU|198.452857|mg/dL|-|Normal|||F||198.452857|20210430183639||||
我如何从这些东西中获得所需的值。并将它们存储在表中以供进一步使用
例如,在这个东西中:
样品编号为
9
患者姓名为
shitalPL
样本类型是
Serum
测试名称是
GLU
测试结果是
198.452857
解决方案
假设这些值在响应中具有固定位置,您可以实现一个函数,在该函数中您将n
作为参数传递,并且您的函数返回第 n 个管道的位置,然后您可以重复此操作n+1
,然后简单地提取和第管道位置之间n
的n+1
数据.
我可以给你一个python示例代码,希望你能转换成vb6。该功能看起来像这样 -
def findNthOccur(string, ch, N):
occur = 0
# Loop to find the Nth
# occurence of the character
for i in range(len(string)):
if (string[i] == ch):
occur += 1
if (occur == N):
return i
return -1
此函数将获取您想要在其中查找出现的字符串、您想要查找的字符(在您的情况下为“|”)并且n
将是您想要查找的第 n 个出现
推荐阅读
- python - CNN:检查输入时出错:预期密集有 2 个维度,但得到了形状为 (391、605、700、3) 的数组
- laravel - Laravel 数据迁移到新结构
- phpstorm - 无需外部使用的 PhpStorm 检查代码
- windows - 使用登录身份与使用 LDAP 身份验证的服务进行无缝身份验证
- python - 将 numpy 数组元素的不同组合组合到数据帧中
- javascript - 打开一个不使用 if 编码的物化模态
- javascript - JavaScript - 如何判断用户是否刚刚返回到上一页
- cors - 缺少 CORS http 响应授权标头
- version-control - 在创建新子分支中显示所有待处理任务
- qt - 如何自动缩放 Qml 地图以适合两个 MapQuickItems