【问题标题】:Try Catch not catching "error : unknown IO error" - I/O warning : failed to load external entity尝试 Catch 未捕获“错误:未知 IO 错误” - I/O 警告:加载外部实体失败
【发布时间】:2018-01-04 05:23:57
【问题描述】:

下面的代码是函数的一部分。 getLatestFileName 函数获取正确的文件名(本地存储)。

这个错误是由tryCatch表达式引起的:result

[1]“最后一步”

[1]“第 1 步”

错误:未知的 IO 错误

I/O 警告:未能加载外部实体“http://xbrl.us/us-gaap/1.0/elts/us-gaap-all-2008-03-31.xsd

根据我打印的内容,我认为错误是由 XBRL 包引起的,当它尝试从上面的 url 获取信息时。

谁能帮帮我?

  instance <- getLatestFileName(ticker, date, type)
  options(stringsAsFactors = FALSE)
  result <- NA
  #result <- try(xbrlDoAll(instance, cache.dir = "XBRLcache", prefix.out = NULL), silent = TRUE)

  tryCatch({
      print("STEP 1")
      options(show.error.messages = FALSE)
      result <- try(xbrlDoAll(instance, cache.dir = NULL, prefix.out =  NULL), silent = TRUE)
      print("STEP2")
    }, warning <- function(w) {
      result <- NA
      print("WARNING")
    }, error = function(e) {
      result <- NA
      print(result)
      print("Test")
    }, finally <- {
      print("FINAL STEP")
    })

  try(is.na(result))
  print("we did get here")

【问题讨论】:

  • 如果你只运行xbrlDoAll(instance, verbose = T)会发生什么?
  • @Christoph 该包正在尝试获取架构,并正在查看缓存文件夹中的文件,该文件为空,因为生成该文件的 url 不再存在。错误在最后几行可见:D:/Thesis_Bram_Lavens/DataLost/raw_data/ABB/20-F/2009-03-10/2008-12-31/abb-20081231.xsd ==&gt; Schema: http://xbrl.us/us-gaap/1.0/elts/us-gaap-all-2008-03-31.xsd Schema: http://xbrl.us/us-gaap/1.0/elts/us-gaap-all-2008-03-31.xsd Using file from cache dir... XBRLcache/us-gaap-all-2008-03-31.xsd:1: parser error : Document is empty Elements
  • 抱歉编辑!我第一次在 stackoverflow 上发帖时尝试让格式正确
  • that 有帮助吗?
  • @Christoph,你所说的“那个”到底是什么意思?我的重点是捕捉错误。发生错误的原因是因为这个 url:xbrl.us/us-gaap/1.0/elts/us-gaap-all-2008-03-31.xsd 不再工作。目前,我不想解决这个问题,我只想让我的代码处理它并继续。

标签: r try-catch ioerror xbrl


【解决方案1】:

我通过将 2008 年的所有分类文件放在我的 XBRLCache 文件夹中解决了这个特定问题。

我在这个链接下载了正确的文件(不是空的,因为错误是什么):

http://xbrl.us/documents/XBRLUSGAAPTaxonomies-2008-03-31.zip

加载页面可能会出现问题,因为我看到它并不总是有效。 可能那些服务器太忙了..

我希望这也适用于其他人!

可惜我没有解决抓不住的问题..

【讨论】:

    猜你喜欢
    • 2012-08-28
    • 2017-10-20
    • 1970-01-01
    • 2014-06-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-10-27
    相关资源
    最近更新 更多