不可打印字符的 DataMan 脚本
本文描述了如何从读卡器的输出字符串中删除不可打印的字符。
本文描述了如何从读卡器的输出字符串中删除不可打印的字符。
在某些情况下,特别是在与数据管理或供应链相关的应用中,诸如 RS、GS 和 EOT 等特定控制字符可能会出现在 DataMatrix 代码中。这些字符用于技术和格式目的。
以下是它们的意思:
为什么在 DataMatrix 代码中使用它们?
总之,DataMatrix 代码中的 RS、GS 和 EOT 字符用于逻辑地组织和构建编码数据,从而更容易在自动化系统中进行解释和处理。
以下是 DataMan 设置工具的结果,默认设置为:

DataMan 设置工具可以按照以下方式选中“已启用”框来翻译不可打印的字符:

以下是结果:

这些字符 (<RS>、<GS>、<EOT>) 可以使用脚本 从输出字符串中删除:
单击蓝色文本“基于脚本的格式”以打开“数据格式脚本”:

使用以下脚本作为“数据融合”脚本:
var RS = "\x1E";
var RSN = "<RS>";
var GS = "\x1D";
var GSN = "<GS>";
var EOT = "\x04";
var EOTN = "<EOT>";
var res = "";
函数 onResult(解码结果、读写器属性、输出)
{
if (decodeResults【0】.decoded)
{
var convert = decodeResults【0】.content.replace(new RegExp(RS,'g'),RSN).replace(new RegExp(GS,'g'),GSN).replace(new RegExp(EOT,'g'),EOTN);
}
res = convert.replace(/<RS>|<EOT>/g, '');
res = res.replace(/<GS>/g, '-');
output.content = res; // 无回车符
//output.content = res + "\r\n" ; // 带回车
}

以下是结果:
