如何读取 RDF 报告文件

Posted

技术标签:

【中文标题】如何读取 RDF 报告文件【英文标题】:How to read RDF reports files 【发布时间】:2021-12-29 04:27:10 【问题描述】:

我有超过 500 个 RDF 报告文件,我需要将它们全部收集到 1 个文件夹中,阅读并找到一些代码。我需要确定报告是否包含特定代码。每个报告都有自己的 ID,之后我必须获取哪个报告包含特定代码

【问题讨论】:

【参考方案1】:

好吧,如果您安装了 Oracle Reports Builder(或 Developer,具体取决于版本),您将能够打开这些报告并轻松查看它们在做什么.

没有它,由于 RDF 文件实际上不是文本文件,您可以在任何文本编辑器(例如记事本)中打开它们并使用它的搜索功能来查找你想要什么。这很可能是 SELECT 声明。

它看起来怎么样?丑陋;看看 RDF 摘录(select 从第 7 行开始):

>   0 ˙˙˙˙ Ć0808¨ Ä  ®   ®function IME_REPORTAValidTrigger return boolean is
    report varchar2(40);
begin
    srw.get_report_name(report);
    :IME_REPORTA:='Report: '||report;
  return (TRUE);
end;˙˙˙˙˙˙ Ë0808¨ É  ł   ł  SELECT id_asl,
         app_user,
         naziv
    FROM adresa_slanja
   WHERE id_asl = :par_id_asl"˙˙˙˙ É€6€J€R€b|(‚ †€Šŕ•(ž€˘ŕ­(¶€ş€ş(ş(ľ(ÂpĆpĆpĆpĆpĆĆ Ç  SQL*ReportWriter  REPORT  ERVÍše adresa_slanja TÚ    @ "   ERVxv)
  ¤ !  ERVxv
     ¤ !      5   @ 100g0b88 ˙˙ ŕŕ ˙˙˙˙ (00x"# $ &˙˙  

如果您有 JSP 文件(或与 RDF 一起使用),那看起来会更漂亮,因为 JSP 在文本编辑器中很容易阅读。


但是:正如你所说的

我必须得到包含特定代码的报告

您为什么不直接从您的操作系统中搜索所有这些报告?有多种工具可让您搜索文件(即不仅可以按名称,还可以按内容)。

我使用Agent Ransack(可免费用于个人和商业用途):指定您要搜索的文件 (*.RDF),指定您要查找的内容(例如“来自 adresa_slanja”)和它'将返回包含该字符串的所有文件。

【讨论】:

【参考方案2】:

我最近自己解决了这个问题。我最终解决问题的方法是:我创建了一个 python 脚本,它使用rwconverter 将所有报告转换为XML,从那里我使用正则表达式查找该行然后替换它。 之后我使用rwconverter 将其转换回RDF,就是这样。

注意:如果您遇到字体问题,这些字体将从报告中消失。

【讨论】:

以上是关于如何读取 RDF 报告文件的主要内容,如果未能解决你的问题,请参考以下文章

如何打开自定义 wikidata RDF 转储

如何从开发者控制台读取崩溃报告

如何使用 c# 读取此代码覆盖率 xml 文件报告

在 Python 中解析大型 RDF

Jena 操作 RDF 文件

使用 MapReduce 解析 Freebase RDF 转储