问题标签 [stx]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
performance - XSLT 与 Xalan 对比 STX 与 Joost
与使用 STX(使用 Joost)相比,我在哪里可以找到使用 XSLT(使用 Xalan)的重要示例的性能指标(内存/时间)
java - 使用 XSLT 进行 XML 提取而不必将整个 DOM 树读入内存?
我有一种情况,我想从一些非常大但常规的 XML 文件中提取一些信息(只需要使用 500 Mb 的文件),而 XSLT 将是完美的。
不幸的是,我知道的那些 XSLT 实现(除了最昂贵的 Saxon 版本)不支持只读取 DOM 的必要部分,而是读取整个树。这会导致计算机死机。
有问题的 XPath 是
所以它本质上只是一个grep。
是否有可以做到这一点的 XSLT 实现?或者一个给出适当“建议”的 XSLT 实现可以做到这一点,即修剪掉内存中不再需要的部分?
我更喜欢 Java 实现,但 Windows 和 Linux 都是可行的本机平台。
编辑:输入 XML 看起来像:
本质上,我想选择一些 m 节点(我知道 XPath 是错误的,这只是一个快速破解),但要保持 XML 布局。
编辑:看来 STX 可能是我正在寻找的(我可以使用另一种转换语言),并且 Joost 是其中的一种实现。有什么经验吗?
编辑:我发现带有 -Xmx1500m 的 Saxon 6.5.4 可以加载我的 XML,所以这让我现在可以使用我的 XPath。这只是一个幸运的中风,所以我仍然想一般地解决这个问题 - 这意味着可编写脚本,这反过来意味着首先没有手工制作的 Java 过滤。
编辑:哦,顺便说一句。这是一个非常类似于 log4j XMLLayout 生成的日志文件。XML 的原因是能够做到这一点,即对日志进行查询。这是最初的尝试,因此是一个简单的问题。稍后我希望能够提出更复杂的问题 - 因此我希望查询语言能够处理输入文件。
java - 将多个大型 xml 文件高效合并为一个
我搜索了网络,并上下搜索了stackoverflow。没有解决方案。虽然我在这里找到了如何在纯 xslt 中执行此操作的解决方案。
但问题是生成的 xml 将有数百 MB 大。所以我必须用 Java 中的 SAX 来做这件事。(请不要使用 xslt 解决方案,尽管我用 xslt 对其进行了标记;-))
让我更详细地解释一下。我有几个应该解析的多个 xml 文件(最好是 InputSteam)。文件或 InputStream 的样子
输入流1
输入流2
inputstream1+inputstream2+...+inputstreamN =结果 xml。它看起来像
有人对此有解决方案或链接吗?这是否可以通过实现自定义 InputSource 或者我应该使用自定义 ContentHandler 来实现?或者这可能与joost/stx吗?
如果我可以使用 ContentHandler 的好处是我可以应用一些小的转换(我已经实现了这个)。但问题是我不知道如何将多个文件或 InputStream 作为 InputSource 传递:
还是应该直接在我的 ContentHandler 中解析 InputStreams?
c# - 通过 .Net Socket 发送/接收帧用于串行通信的消息
我们已经完成了一些基本的 TCP 通信,但还有一些问题。我们正在与 TCP 服务器通信,其中事务流描述如下:
发送方通过发送 STX (ASCII 0x02) 字符来启动交易,然后通过发送 ACK (ASCII 0x06) 字符等待接收方回复。收到 ACK 后,发送方发送一个 4 字节无符号大端整数,表示消息有效负载的大小,然后是有效负载,最后是有效负载的 16 字节 MD5 消息摘要。如果接收者对消息感到满意,它会发送一个 ACK 字符。
使用 .Net 套接字 (System.Net.Sockets.Socket),管理 STX/ACK 传输控制的正确方法是什么?套接字是否会自动处理这个问题(即我们是否只需调用 socket.Send(byteData)),还是我们需要显式发送 STX、等待 ACK 等?
接收也是如此:我们只是简单地接收传入的数据,还是需要监听 STX 字符、发送 ACK、准备负载等?
如果传输控制是自动处理的,我们是否需要设置任何特定的套接字标志?
仅供参考:我们发现几个链接(如下所示)已被证明对消息帧有用,但没有一个讨论 STX/ACK 传输控制:
c++ - 在 C++ 中的字符串中定位 STX 和 ETX
有没有办法在 c++ 中的 recv() 接收到的消息中检测 STX(文本开头)和 ETX(文本结尾)字符序列?我正在尝试修复 TCP 中可能发生的任何部分读取,以便我可以修改完整的消息。
谢谢!
编辑1:
根据 unwind 的答案做了以下操作:
我仍然没有设法检测到这个角色。这个实现有什么问题吗?'it' 是字符串类型向量的迭代器。
编辑2:
这是接收数据和检查字符的完整代码:
所以,我只是检查 STX,还没有连接缓冲数据。但是,STX 检查仍然失败。请让我知道这种方法中的任何问题。
谢谢。
编辑3:
我得到了示例消息的以下十六进制值:
所以 STX/ETX 的十六进制值不存在。这意味着不能使用 STX 和 ETX 来检查消息的形成。
mysql - 在 MySQL 表中替换 R 中的特殊字符
我有一个使用“RODBC”包从 R 访问的 MySQL 表。一些列具有由 STX 字符 (\x02) 分隔的长连接字符串。我已经显示了下面字符的屏幕打印(字符被圈出):
我想从 R(RODBC 包)运行以下查询,用不同的字符替换 STX 分隔符:
我在下面给出了完整的代码:
有没有办法从 R 中实现这一点?
validation - [0x02, 0x03, 0x00] 是有效数据吗?
我正在尝试编写一个程序,该程序根据byte[]
数组中的消息协议返回有效数据。
我有:
有效数据是当byte[]
数组包含 STX、ETX、数据和正确计算的 LRC 时,例如:
无效数据示例:
该字节还可能包含有效数据周围的随机值:
我的问题是,当我使用带有随机数据的消息并0x2,0x3,0x00,0x02
让它中断时,因为它将 0x02 和 0x03 视为 STX 和 ETX,然后它计算 LRC 导致 0x03 导致返回:0x2,0x3,0x00
最后一个 0x03 被视为法改委。
问题是这个有效数据:
我应该返回最新的有效数据,但其中有更好的数据:
transformation - 如何缩进 STX 转换输出(类型“XML”)?
如何缩进由于 STX 转换而生成的输出 XML。我通过查看transform元素在官方文档中搜索了它,但发现它没有任何缩进属性,就像XSLT一样。有没有办法做到这一点?
xml - STX:如何处理比匹配元素更高级别的元素?
...或者也许以某种方式获得孩子的内容?
大家好,我正在使用 STX,因为我有大量的 XML 文件。
我有一些意见
我需要得到这样的输出
我写了一个部分完成的转换
我知道,stx:process 很少,例如 stx:process-children、stx:process-self、stx:process-siblings,但这种情况下它不起作用。
c# - c# rs485 crc for stx data etx crc
我想计算要发送到分配器的消息的 crc。消息格式为 STX + DATA + ETX + CRC 并写道“crc 可以通过在 7fh 和包括 ETX 在内的所有字符的总和之间使用 AND 运算符来计算,不包括 STX 或在 40h 和所有字符的总和之间使用 OR 运算符包括 ETX,不包括 STX。”
我无法从这些信息中获取 crc 的格式。欢迎任何想法或示例,
谢谢您的关注