Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Java [игнор отключен] [закрыт для гостей] / Список файлов в папке / 5 сообщений из 5, страница 1 из 1
25.08.2014, 17:20
    #38728340
Tsunami9
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Список файлов в папке
Здравствуйте, товарищи!

Не силён в яве и столкнулся с проблемой.
Казалось бы задача простая, есть папка, из которой читаю список файлов.
читаю так
Код: java
1.
2.
File directory = new File(path);
String[] paths = directory.list();


если использовать метод list() то туда ещё считываются имена вложенных папок.

Есть похожий метод listFiles(), который можно запустить с фильтром, однако данный метод выводит длинные имена файлов в стиле '/home/temp/123.txt'. А мне бы оставить только '123.txt'

Подскажите, как можно решить мою проблему?
1. Как использовать метод list(), чтобы выдавал только имена файлов?
2. Как использовать метод listFiles(), чтобы он выводил короткие имена файлов, а не абсолютные.

Спасибо.
...
Рейтинг: 0 / 0
25.08.2014, 17:25
    #38728350
Blazkowicz
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Список файлов в папке
Tsunami9,

У вас вопрос про "вывод", а в коде ничего про "вывод" нет.
...
Рейтинг: 0 / 0
25.08.2014, 17:40
    #38728369
korshun
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Список файлов в папке
А в чем сложность из '/home/temp/123.txt' выдернуть 123.txt ?
...
Рейтинг: 0 / 0
25.08.2014, 19:05
    #38728445
Nixic
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Список файлов в папке
Буквально пару недель назад этим занимался, парсил строку пути до файла, чтобы отображать имена.
Задача была, заливать файлы в папку, если папки нет, создать ее. Залить информацию о файле в бд, указать уровень доступа к файлу через элементарные цифры, типа уровень доступа от 0 до 5-6. В зависимости от установленного уровня доступа пользователю, показывать или не показывать ссылку на скачивание файла. Так как доступ к проекту через веб, возникла проблема с кодировкой - решил.
Короче, аля файлообменник корпоративный.
Если завтра не забуду скину готовый код, который парсит строку, хотя там совсем ничего сложного нет. И, наверное, проблема решиться еще до того как я скину свой быдлокод)))
...
Рейтинг: 0 / 0
25.08.2014, 20:21
    #38728470
avp.mk
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Список файлов в папке
Код: java
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
package filelist;

import java.io.File;
import java.io.IOException;
import java.nio.file.DirectoryStream;
import java.nio.file.Path;
import java.nio.file.Paths;

import static java.lang.System.out;
import static java.nio.file.Files.newDirectoryStream;
import static java.nio.file.Files.isRegularFile;

public class FileList {

    public static void main(String[] args) throws IOException {
        String txtPath = "C:\\";

        out.println("old api:");
        File directory = new File(txtPath);
        for (File e : directory.listFiles()) {
            if (e.isFile()) {
                out.print("  ");
                out.println(e.getName());
            }
        }

        out.println();
        out.println("java 7 api (быстрей и безопасней):");
        try (DirectoryStream<Path> directoryStream = newDirectoryStream(Paths.get(txtPath))) {
            for (Path path : directoryStream) {
                if (isRegularFile(path)) {
                    out.print("  ");
                    out.println(path.getFileName());
                }
            }
        }
    }
}
...
Рейтинг: 0 / 0
Форумы / Java [игнор отключен] [закрыт для гостей] / Список файлов в папке / 5 сообщений из 5, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]