Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package java;
- import java.io.File;
- import java.io.IOException;
- import java.nio.file.Files;
- import java.nio.file.Path;
- import java.nio.file.attribute.BasicFileAttributes;
- import java.nio.file.attribute.FileTime;
- import java.text.SimpleDateFormat;
- import java.time.Instant;
- import java.time.LocalDate;
- import java.time.LocalDateTime;
- import java.time.LocalTime;
- import java.time.ZoneId;
- import java.util.*;
- import java.util.stream.Collectors;
- public class Zadanie02 {
- public static void main(String[] args) throws IOException {
- /*
- Zrob zestawienie:
- dzien stworzanie pliku java -> ilosc plikow
- A następnie:
- Wypisz wszystkie pliki java ktore NIE zostaly stworzone na zajeciach tzn:
- nie sa w poniedzialek z godzin 18:30-19:30
- */
- File workspacePath = new File("/Users/waldiemar/Desktop/JavaPrograms/");
- List<File> allJavaFilesInWorkspace = Files.walk(workspacePath.toPath())
- .filter(f -> f.toFile().isFile() && f.toFile().getName().endsWith(".java"))
- .map(Path::toFile)
- .collect(Collectors.toList());
- System.out.println(allJavaFilesInWorkspace);
- Map<String, Integer> collection = new HashMap<>();
- SimpleDateFormat sdf = new SimpleDateFormat("EEEE", new Locale("pl", "PL"));
- for (File f : allJavaFilesInWorkspace) {
- BasicFileAttributes attrs = Files.readAttributes(f.toPath(), BasicFileAttributes.class);
- System.out.println(attrs.creationTime() + " " + f.getName());
- FileTime date = attrs.creationTime();
- String dayOfWeek = sdf.format(date.toMillis());
- Calendar c = Calendar.getInstance();
- final LocalDateTime fileCreationDateTime = LocalDateTime.ofInstant(date.toInstant(), ZoneId.systemDefault());
- final LocalDateTime dateStart = LocalDateTime.of(fileCreationDateTime.toLocalDate(), LocalTime.of(18, 30));
- final LocalDateTime dateEnd = LocalDateTime.of(fileCreationDateTime.toLocalDate(), LocalTime.of(19, 30));
- boolean notMonday = !sdf.format(date.toMillis()).equalsIgnoreCase("poniedziałek");
- if (notMonday && fileCreationDateTime.isBefore(dateStart) && fileCreationDateTime.isAfter(dateEnd)) {
- if (!collection.containsKey(dayOfWeek)) {
- collection.put(dayOfWeek, 1);
- } else {
- int count = collection.get(dayOfWeek);
- collection.put(dayOfWeek, count + 1);
- }
- }
- }
- System.out.println(collection);
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement