版权声明:注明转载出处 https://blog.csdn.net/qq_38629981/article/details/80898935
subSequence方法和subString方法的区别
根据JDK的文档说明,String.subSequence只是为了实现CharSequence接口上的同名方法而放在那里的,其行为与String.subString一样 返回类型不一样,subString返回的是String,subSequence返回的是实现了CharSequence接口的类,也就是说使用subSequence得到的结果, 只能使用CharSequence接口中的方法。不过在String类中已经重写了subSequence,调用subSequence方法,可以直接下转为String对象。
ArrayList<File> list = new ArrayList<File>();
String path = "/mnt/sdcard/Movies/";
getFiles(list, path);
for (int i = 0; i < list.size(); i++) {
String mPicName = list.get(i).getName();
System.out.println("全明星: " + mPicName);
// 获取后缀名与非后缀名
String substring = mPicName.substring(mPicName.lastIndexOf(".")+1);
System.out.println("后缀名: " + substring);
String string = mPicName.substring(0, mPicName.lastIndexOf("."));
Log.e("eee","文件名 : " + string);
CharSequence sequence = mPicName.subSequence(0, mPicName.lastIndexOf("."));
Log.e("eee","文件名 : " + sequence);
// boolean kz = mPicName.endsWith(".jpeg");
// if (kz) { //判断是否为 JPEG图片
// Log.e("eee","文件名 : " + mPicName);
// }
}
// 遍历文件
private void getFiles(ArrayList<File> list, String filePath) {
File[] allFiles = new File(filePath).listFiles();
if (allFiles != null) { // 若文件不为空,则遍历文件长度
for (int i = 0; i < allFiles.length; i++) {
File file = allFiles[i];
if (file.isFile()) {
list.add(file);
}
}
}
}
2、
getFileName("/mnt/sdcard/Movies/");
public static Vector<String> getFileName(String filepath) {
Vector<String> vecFile = new Vector<String>();
File file = new File(filepath);
File[] subFile = file.listFiles();
for (int iFileLength = 0; iFileLength < subFile.length; iFileLength++) {
// 判断是否为文件夹
if (!subFile[iFileLength].isDirectory()) {
String filename = subFile[iFileLength].getName();
Log.e("eee","文件名 : " + filename);
}
}
return vecFile;
}