【问题标题】:Is there any way to assign Array String to method java.lang.String.endwith(String suffix)有没有办法将数组字符串分配给方法 java.lang.String.endswith(String suffix)
【发布时间】:2012-11-01 20:14:47
【问题描述】:

我需要一个文件的后缀与一个像

这样的数组列表
String[] FileType = {"pdf","mp3","jpg"}
File SourceFileToCheckType = new File("C:\\Users\\RS\\Desktop\\test.pdf");

使用下面的方法....这个方法完全没有错误如何处理这种情况

public static boolean FileTypeAccept(File SourceFileToCheckType, String[] fileType) 
    {

            for (String filetypeS : fileType)

            return SourceFileToCheckType.getName().endsWith("." + filetypeS);


    }

【问题讨论】:

  • 我能看到的一个错误是:-your method is missng a return statement。是那个吗?因为你还没有发布它。
  • 我知道...以下回答解决了问题

标签: java arrays string file


【解决方案1】:

你快完成了。试试这个代码:

public static boolean FileTypeAccept(File source, String[] fileTypes) 
{
    for (String filetype : fileTypes)
        if (source.getAbsolutePath().endsWith("." + filetype))
            return true;

    return false;
}

【讨论】:

    【解决方案2】:

    你可以用正则表达式来做:

    SourceFileToCheckType.getName().matches(".*(pdf|mp3|jpg)$")
    

    如果你想让它成为一个变量:

    String fileTypes = "pdf|mp3|jpg";
    
    SourceFileToCheckType.getName().matches(".*(" + fileTypes + ")$")
    

    另外,在 java 中更喜欢以小写字母开头的命名变量。

    【讨论】:

      猜你喜欢
      • 2023-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-10-24
      • 2012-04-24
      • 2023-02-24
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多