[英]Load a Perl Hash into Java
我有一个很大的.pm
文件,其中仅包含一个非常大的Perl哈希,其中包含很多子哈希。 我必须将此哈希值加载到Java程序中,对下面的数据进行一些工作和更改,然后将其保存回.pm
文件中,该文件看起来应该与我最初使用的文件类似。
到目前为止,我尝试通过正则表达式和字符串匹配将其逐行转换,将其转换为XML文档,然后通过Elementwise将其解析回perl哈希。
这在某种程度上是可行的,但是似乎很狡猾。 在没有安装Perl运行时的情况下,还有什么更可靠的方法来解析Perl哈希?
您说得对,完全是肮脏的。 首先,用于XML的正则表达式和字符串是一个可怕的想法,老实说XML可能无论如何都不适合。
我建议您考虑使用JSON
。 我会惊讶地发现java
无法处理JSON
,它本质上是面向哈希和数组的数据结构。
因此,您可以从字面上看:
use JSON;
print to_json ( $data_structure, { pretty => 1 } );
注意-它不适用于序列化对象,但对于perl哈希/数组/标量类型结构,它将很好用。
然后可以使用以下命令将其导入回perl:
my $new_data = from_json $string;
print Dumper $new_data;
可以将其Dumper
到文件中,但是鉴于您的要求是多语言的发展,仅使用本地JSON作为“静态”数据可能是更明智的选择。
但是,如果您要在没有Perl解释器的情况下在Java中解析Perl代码 ? 不,那只是精神错乱。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.