【问题标题】:Zenity command for multiple file filteringZenity 命令用于多文件过滤
【发布时间】:2016-11-08 03:52:33
【问题描述】:

我尝试了一些 Zenity 命令在我的 java 程序中进行文件过滤。

zenity --file-selection --file-filter=""*.ogg" "*.wav" "*.aac""   

zenity --file-selection --multiple --file-filter=*.gif *.jpeg *.jpg

但是这些都不能正常工作。不提供所有过滤的文件,它只提供注释中给出的第一个文件类型,这意味着;

zenity --file-selection --multiple --file-filter=*.gif *.jpeg *.jpg 

在这些中,它只返回 .gif 文件作为输出)。

【问题讨论】:

    标签: linux shell zenity


    【解决方案1】:

    你能试试这样的吗?

    import java.io.BufferedReader;
    import java.io.IOException;
    import java.io.InputStreamReader;
    
    public class RunBash {
    
        public static void main(String[] args) {
              String cmd = "zenity --file-selection --file-filter=\"\"*.gif\" \"*.jpeg\" \"*.jpg\"\"";
    
                try {
                    Process proc = Runtime.getRuntime().exec(new String[] {"/bin/bash", "-c", cmd});
                    BufferedReader read = new BufferedReader(new InputStreamReader(proc.getInputStream()));
                    try {
                        proc.waitFor();
                    } catch (InterruptedException e) {
                        System.out.println(e.getMessage());
                    }
                    while (read.ready()) {
                        System.out.println(read.readLine());
                    }
                } catch (IOException e) {
                    System.out.println(e.getMessage());
                }
        }
    }
    

    【讨论】:

      【解决方案2】:

      如果你这样做:

      $ zenity --file-selection \
               --file-filter='Musics | *.ogg | *.wav | *.aac'
      

      所有选定的文件类型将一起打印。真是一团糟……

      如果你这样做:

      $ zenity --file-selection \
               --file-filter='*.ogg' \
               --file-filter='*.wav' \
               --file-filter='*.aac'
      

      应在右下角生成这 3 种文件类型的组合,您可以在其中选择打印哪一种,按类型键入

      如果我是你,我会安装 YAD,它是 zenity 的分支,但在更高级的阶段。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2011-06-24
        • 1970-01-01
        • 1970-01-01
        • 2017-01-08
        • 2015-08-17
        • 2021-11-25
        相关资源
        最近更新 更多