【问题标题】:How to restrict Shiny fileInput to text files only?如何将 Shiny fileInput 限制为仅文本文件?
【发布时间】:2015-06-02 15:53:23
【问题描述】:

我想限制我的文件浏览器只显示我指定的文件类型,例如.txt 文件。我找到的唯一相关的sn-ps代码如下:

fileInput("in_file", 
          "Input file:",
          accept=c("txt/csv", "text/comma-separated-values,text/plain", ".csv") 

但是,这不会将浏览器中显示的文件过滤为仅 .txt 和 .csv。有什么想法吗?

【问题讨论】:

    标签: shiny rstudio


    【解决方案1】:

    据我了解,这是正确的做法。如果您在 RStudio 查看器中查看您的应用程序,它不会做任何事情,但在浏览器中它应该。我正在使用 Chrome,我刚刚运行了该代码,它实际上只显示了 txt 和 csv 文件。

    当然,用户仍然可以通过转到小选择框并选择查看所有文件来选择查看其他文件,但他们必须有意识地选择这样做。默认只显示 csv 和 txt 文件

    【讨论】:

    • 谢谢,你是对的,它在 Chrome 中做了更多的过滤!但是,在下拉列表中显示的是“自定义文件”而不是“.CSV”。在将您的答案标记为最终答案之前,让我再看看我的代码...
    • 好的,所以一切都按照您的建议在浏览器中运行。谢谢你。我将 accept = c("text", ".txt") 用于文本文件,将 accept = c("csv", ".csv") 用于 CSV 文件。
    • 我认为“自定义文件”仍然会显示,但没关系,如果用户故意尝试查看其他文件类型,那么他应该得到一个错误:)
    • haha "microsoft" csv... 因为我确信他们为该文件格式申请了专利 :) 很高兴它可以工作
    • :) 实际上,它说的是 Microsoft Excel 逗号分隔...。再次感谢您的帮助,daattali!
    猜你喜欢
    • 2018-04-13
    • 1970-01-01
    • 2019-07-21
    • 2012-07-18
    • 1970-01-01
    • 2014-03-26
    • 2020-09-09
    • 2014-04-29
    • 2010-12-06
    相关资源
    最近更新 更多