gpt4 book ai didi

java - ASN.1 解码错误

转载 作者:行者123 更新时间:2023-12-01 11:28:52 26 4
gpt4 key购买 nike

我正在使用 Objective System Inc( http://www.obj-sys.com/products/asn1c/index.php ) ASN.1 编译器 和规范文件(cdr_spec.asn) 生成的 Java 源代码。 CDRS基于BER(基本编码规则)格式进行编码

生成Java源代码的命令:

./asn1c cdr_spec.asn -java -ber -reader -print -getset -pkgname com.testpkg

源代码已生成:

ASN1C Compiler, Version 6.4.5
Copyright (c) 1997-2011 Objective Systems, Inc. All Rights Reserved.

Registered to: XXXXXX
Parsing ASN.1 definitions..

Generating Java source files for module XXX-XXX..

当我解码第一个 CDR 文件时,它只解析了 3 行,CDR 文件应该包含超过 100 行,因此它被部分解码。

当我尝试解码另一个 CDR 文件时,解码 CDR 文件失败并给出这样的错误:

com.objsys.asn1j.runtime.Asn1MissingRequiredException: ASN.1 decode error @ offset 832:
SEQUENCE or SET is missing a required element.
10:11:30.394 [main] ERROR com.testpkg.Test - ASN.1 decode error @ offset 832:
SEQUENCE or SET is missing a required element.

当我使用工具检查其语法时,我的 ASN.1 规范文件没有任何语法错误。

熟悉 ASN.1 的人可以帮我解决这个问题吗?

最佳答案

When I try decoding another CDR file, it is failed when decoding CDR file and gave me such error:

com.objsys.asn1j.runtime.Asn1MissingRequiredException: ASN.1 decode error @ offset 832: SEQUENCE or SET is missing a required element.
10:11:30.394 [main] ERROR com.testpkg.Test - ASN.1 decode error @ offset 832:
SEQUENCE or SET is missing a required element.

根据您的描述,问题似乎出在输入数据上,而不是实际规范本身。供应商提供与其硬件生成的数据不太相符的规范并不罕见。

如果您可以确定缺少哪个元素,您可以随时尝试在规范中标记字段OPTIONAL,重新生成代码,然后重试。

或者,您可以随时联系软件和/或硬件供应商寻求帮助。

关于java - ASN.1 解码错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30601478/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com